Página 1 de 1

CreateObject

Publicado: Lun May 29, 2006 3:48 pm
por Yamil Bracho
Saludos. Estoy tratando de crear una instancia de Crystal Reports.
El codigo que tengo en VB (y que funciona OK) es
Dim oProj As CRAXDRT.Application
Dim oReport As CRAXDRT.Report
Dim varX As Variant
Dim varTabla As DatabaseTable
Set oProj = New CRAXDRT.Application
Set oReport = oProj.OpenReport("c:temptest.rpt")
For Each varTabla In oReport.Database.Tables
varTabla.SetLogOnInfo ("MyServer")
Next
oReport.SaveAs "c:tempkaka.rpt", cr80FileFormat
En Xailer estoy tratando simplemente de crear el objeto CRXDRT.Application y
lo hice asi :
LOCAL oProj
oProj := CreateObject( "CRAXDRT.Application" )
Pero me arroja el siguiente error :
***************************** Registro de errores
*****************************
Fecha: 05/29/06
Hora: 09:47:57
Memoria libre: 125848
Area actual: 1
------------------------- Información del
compilador --------------------------
Versión Xailer: Xailer 0.99.7 Pre-release 7
Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
Compilador C/C++: Borland C++ 5.5.1
Plataforma: Windows XP Professional 5.01.2600 Service Pack 1
----------------------- Información detallada del
error -----------------------
Subsistema: TOleAuto
Código de error: -1
Estado: .F.
Descripción: CO_E_CLASSSTRING
Operación: TOLEAUTO:NEW
Argumentos: [ 1] = Tipo: C Valor: CRAXDRT.Application
Fichero:
Código error SO: 0
Pila de llamadas:
TOLEAUTO:NEW (307)
CREATEOBJECT (67)
SETLOCATION (119)
TFORMMAIN:BTNPROCESARCLICK (102)
TBUTTON:ONCLICK (0)
TBUTTON:CLICK (102)
(b)XCONTROL:XCONTROL (141)
TBUTTON:COMMAND (0)
TSCROLLINGWINCONTROL:WMCOMMAND (251)
TFORMMAIN:WMCOMMAND (855)
RUNFORM (0)
TAPPLICATION:RUN (189)
MAIN (15)
Deje algo por fuera ?
Saludos y gracias

CreateObject

Publicado: Lun May 29, 2006 4:56 pm
por Yamil Bracho
Ya he solucionado algo y el codigo me quedo asi :
oCR := CreateObject("CrystalRuntime.Application")
oRpt := oCR:OpenReport( cSource )
oDB := oRpt:Database()
ocDBT := oDB:Tables()
oDBT := ocDBT:Item(1)
oDBT:SetLogInfo( cServer, cDatabase, cUser, cPass )
El problema ahora es en la llamada a SetLogInfo. Me da el siguiente error :
***************************** Registro de errores
*****************************
Fecha: 05/29/06
Hora: 10:56:01
Memoria libre: 86172
Area actual: 1
------------------------- Información del
compilador --------------------------
Versión Xailer: Xailer 0.99.7 Pre-release 7
Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
Compilador C/C++: Borland C++ 5.5.1
Plataforma: Windows XP Professional 5.01.2600 Service Pack 1
----------------------- Información detallada del
error -----------------------
Subsistema: CrystalRuntime.Application:OPENREPORT:DATABASE:TABLES:ITEM
Código de error: 16389
Estado: .F.
Descripción: E_FAIL
Operación: SETLOGINFO
Argumentos: [ 1] = Tipo: C Valor: MyServer [ 2] = Tipo: C Valor:
MyDatabase [ 3] = Tipo: C Valor: MyUser [ 4] = Tipo: C Valor: MyPass
Fichero:
Código error SO: 0
Pila de llamadas:
TOLEAUTO:SETLOGINFO (0)
SETLOCATION (163)
TFORMMAIN:BTNPROCESARCLICK (130)
TBUTTON:ONCLICK (0)
TBUTTON:CLICK (102)
(b)XCONTROL:XCONTROL (141)
TBUTTON:COMMAND (0)
TSCROLLINGWINCONTROL:WMCOMMAND (251)
TFORMMAIN:WMCOMMAND (855)
RUNFORM (0)
TAPPLICATION:RUN (189)
MAIN (15)
Hay alguna manera de especificar parametros por defecto porque de toda la
lista el unico que me interesa especificar es el primero ?

CreateObject

Publicado: Lun May 29, 2006 5:37 pm
por jfgimenez
Yamil,
> Hay alguna manera de especificar parametros por defecto porque de toda la
> lista el unico que me interesa especificar es el primero ?
Puedes poner NIL. No obstante, en OLE, si no pasas un parámetro, el
componente OLE lo recibe como VT_EMPTY, y debería asumirlo como NIL, NULL o
su equivalente en el lenguaje que esté hecho.
--
Un saludo,
José F. Giménez

CreateObject

Publicado: Lun May 29, 2006 7:07 pm
por Yamil Bracho
Gracias Jose
Probe y cambie a Nil pero igual. He aqui el codigo que cambie:
//SetLogOnInfo (pServername as string, [pDatabaseName], [pUserID],
[pPassword])
//oDBT:SetLogInfo( cServer, cDatabase, cUser, cPass )
oDBT:SetLogInfo( cServer, Nil, Nil, Nil )
Alguna otra cosa para probar.. ?
***************************** Registro de errores
*****************************
Fecha: 05/29/06
Hora: 13:02:45
Memoria libre: 255344
Area actual: 1
------------------------- Información del
compilador --------------------------
Versión Xailer: Xailer 0.99.7 Pre-release 7
Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
Compilador C/C++: Borland C++ 5.5.1
Plataforma: Windows XP Professional 5.01.2600 Service Pack 1
----------------------- Información detallada del
error -----------------------
Subsistema: CrystalRuntime.Application:OPENREPORT:DATABASE:TABLES:ITEM
Código de error: 16389
Estado: .F.
Descripción: E_FAIL
Operación: SETLOGINFO
Argumentos: [ 1] = Tipo: C Valor: MyServer [ 2] = Tipo: U Valor: NIL
[ 3] = Tipo: U Valor: NIL [ 4] = Tipo: U Valor: NIL
Fichero:
Código error SO: 0
Pila de llamadas:
TOLEAUTO:SETLOGINFO (0)
SETLOCATION (158)
TFORMMAIN:BTNPROCESARCLICK (130)
TBUTTON:ONCLICK (0)
TBUTTON:CLICK (102)
(b)XCONTROL:XCONTROL (141)
TBUTTON:COMMAND (0)
TSCROLLINGWINCONTROL:WMCOMMAND (251)
TFORMMAIN:WMCOMMAND (855)
RUNFORM (0)
TAPPLICATION:RUN (189)
MAIN (15)

CreateObject

Publicado: Mar May 30, 2006 9:45 am
por alcisoft
Creo que en recientes fehas habia una news en el foro de xHarbour donde
alguien exponia el mismo problema y se hablaba largo de ello.
Yamil Bracho escribió en mensaje <447b2af2$1@ozsrvnegro.ozlan.local>...
>Gracias Jose
>Probe y cambie a Nil pero igual. He aqui el codigo que cambie:
>
> //SetLogOnInfo (pServername as string, [pDatabaseName], [pUserID],
>[pPassword])
> //oDBT:SetLogInfo( cServer, cDatabase, cUser, cPass )
> oDBT:SetLogInfo( cServer, Nil, Nil, Nil )
>
>Alguna otra cosa para probar.. ?
>
>***************************** Registro de errores
>*****************************
>
> Fecha: 05/29/06
> Hora: 13:02:45
> Memoria libre: 255344
> Area actual: 1
>
>------------------------- Información del
>compilador --------------------------
>
> Versión Xailer: Xailer 0.99.7 Pre-release 7
> Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
>Compilador C/C++: Borland C++ 5.5.1
> Plataforma: Windows XP Professional 5.01.2600 Service Pack 1
>
>----------------------- Información detallada del
>error -----------------------
>
> Subsistema:
CrystalRuntime.Application:OPENREPORT:DATABASE:TABLES:ITEM
> Código de error: 16389
> Estado: .F.
> Descripción: E_FAIL
> Operación: SETLOGINFO
> Argumentos: [ 1] = Tipo: C Valor: MyServer [ 2] = Tipo: U Valor: NIL
>[ 3] = Tipo: U Valor: NIL [ 4] = Tipo: U Valor: NIL
> Fichero:
> Código error SO: 0
>
>Pila de llamadas:
> TOLEAUTO:SETLOGINFO (0)
> SETLOCATION (158)
> TFORMMAIN:BTNPROCESARCLICK (130)
> TBUTTON:ONCLICK (0)
> TBUTTON:CLICK (102)
> (b)XCONTROL:XCONTROL (141)
> TBUTTON:COMMAND (0)
> TSCROLLINGWINCONTROL:WMCOMMAND (251)
> TFORMMAIN:WMCOMMAND (855)
> RUNFORM (0)
> TAPPLICATION:RUN (189)
> MAIN (15)
>
>

CreateObject

Publicado: Mar May 30, 2006 3:01 pm
por Yamil Bracho
OK, Gracias por el dato. Voy a revisarlos...
"Antonio Martinez" <alcisoft@arrakis.es> wrote in message
news:[email=447bf312@ozsrvnegro.ozlan.local...]447bf312@ozsrvnegro.ozlan.local...[/email]
> Creo que en recientes fehas habia una news en el foro de xHarbour donde
> alguien exponia el mismo problema y se hablaba largo de ello.
>
> Yamil Bracho escribió en mensaje <447b2af2$1@ozsrvnegro.ozlan.local>...
> >Gracias Jose
> >Probe y cambie a Nil pero igual. He aqui el codigo que cambie:
> >
> > //SetLogOnInfo (pServername as string, [pDatabaseName], [pUserID],
> >[pPassword])
> > //oDBT:SetLogInfo( cServer, cDatabase, cUser, cPass )
> > oDBT:SetLogInfo( cServer, Nil, Nil, Nil )
> >
> >Alguna otra cosa para probar.. ?
> >
> >***************************** Registro de errores
> >*****************************
> >
> > Fecha: 05/29/06
> > Hora: 13:02:45
> > Memoria libre: 255344
> > Area actual: 1
> >
> >------------------------- Información del
> >compilador --------------------------
> >
> > Versión Xailer: Xailer 0.99.7 Pre-release 7
> > Compilador: xHarbour build 0.99.61 Intl. (SimpLex) PCode Version: 7
> >Compilador C/C++: Borland C++ 5.5.1
> > Plataforma: Windows XP Professional 5.01.2600 Service Pack 1
> >
> >----------------------- Información detallada del
> >error -----------------------
> >
> > Subsistema:
> CrystalRuntime.Application:OPENREPORT:DATABASE:TABLES:ITEM
> > Código de error: 16389
> > Estado: .F.
> > Descripción: E_FAIL
> > Operación: SETLOGINFO
> > Argumentos: [ 1] = Tipo: C Valor: MyServer [ 2] = Tipo: U Valor:
NIL
> >[ 3] = Tipo: U Valor: NIL [ 4] = Tipo: U Valor: NIL
> > Fichero:
> > Código error SO: 0
> >
> >Pila de llamadas:
> > TOLEAUTO:SETLOGINFO (0)
> > SETLOCATION (158)
> > TFORMMAIN:BTNPROCESARCLICK (130)
> > TBUTTON:ONCLICK (0)
> > TBUTTON:CLICK (102)
> > (b)XCONTROL:XCONTROL (141)
> > TBUTTON:COMMAND (0)
> > TSCROLLINGWINCONTROL:WMCOMMAND (251)
> > TFORMMAIN:WMCOMMAND (855)
> > RUNFORM (0)
> > TAPPLICATION:RUN (189)
> > MAIN (15)
> >
> >
>
>