HEre's some sample code - it's pretty straightforward. I'm grabbing the name of the report as the first argument.
<job id='CommandLineScheduling'>
<script language='VBScript'>
Option Explicit
Const USERNAME = "username"
Const PASSWORD = "password"
Const APS = "MyAPS"
Dim sQuery
Dim sReportName
Dim ceSessionManager
Dim ceSession
Dim ceInfoStore
Dim ceInfoObjects
Dim ceInfoObject
Dim ceSchedulingInfo
sReportName = WScript.Arguments.Item(0)
Wscript.Echo "Scheduling: " & sReportName
Wscript.Echo
Set ceSessionManager = CreateObject("CrystalEnterprise.SessionMgr"
Set ceSession = ceSessionManager.Logon(USERNAME, PASSWORD, APS, "secEnterprise"
Set ceInfoStore = ceSession.Service("", "InfoStore"
sQuery = "SELECT SI_ID FROM CI_INFOOBJECTS WHERE SI_PROGID='CrystalEnterprise.Report' AND SI_INSTANCE=0 AND SI_NAME = '" & sReportName & "'"
Set ceInfoObjects = ceInfoStore.Query(sQuery)
If( ceInfoObjects.Count > 0 ) Then
Set ceInfoObject = ceInfoObjects.Item(1)
Set ceSchedulingInfo = ceInfoObject.SchedulingInfo
ceSchedulingInfo.Type = 0
ceInfoStore.Schedule ceInfoObjects
End If
' Dereference everything
Set ceSchedulingInfo = Nothing
Set ceInfoObject = Nothing
Set ceInfoObjects = Nothing
Set ceInfoStore = Nothing
Set ceSession = Nothing
Set ceSessionManager = Nothing
</script>
</job>