Consulta de Funcky
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
Consulta de Funcky
Hola estimados,
Tengo un trial de Funcky 6.0 para xBase++, necesito saber si funciona con Fwh.
Saludos desde Nicaragua, C.A.
Tengo un trial de Funcky 6.0 para xBase++, necesito saber si funciona con Fwh.
Saludos desde Nicaragua, C.A.
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
No es un control, es un Componente COM y se accesa por OLE.
En general el manual de funcky es muy explicito.
Lee mi articulo:
http://google.blogspot.com/2005/03/its- ... again.html
En general el manual de funcky es muy explicito.
Lee mi articulo:
http://google.blogspot.com/2005/03/its- ... again.html
Saludos
R.F.
R.F.
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
Hola René,
En realidad creí que al ver tu ejemplo me iba a funcionar, pero no fué así, me aperece el siguiente error:
Error description: Error TOleAuto/-1 Unknown error: TOLEAUTO:NEW
No tengo ningún archivo Funcky.ocx, sólo Funcky60.dll
El ejecutable que descarqué de tu blog funciona perfectamente.
Saludos.
En realidad creí que al ver tu ejemplo me iba a funcionar, pero no fué así, me aperece el siguiente error:
Error description: Error TOleAuto/-1 Unknown error: TOLEAUTO:NEW
No tengo ningún archivo Funcky.ocx, sólo Funcky60.dll
El ejecutable que descarqué de tu blog funciona perfectamente.
Saludos.
Jairo:
2 cosillas, el EXE esta construido con la version completa de funcky, por lo que si te falla algun componente es que estas tratando de invocar algun elemento de funcky que no esta en la version de evaluacion.
Utiliza la clase TOleAUTO nativa de xHarbour, si estas trabajando con Harbour igual tendras que agregar la TOLE por fuera.
El componente funcky lo tienes que registrar en tu ordenador para que pueda funcionar.
Esto se hace asi:
copia estos archivos a la carpeta windows\system32
FUNCky60.DLL, FUNCky60.TLB y FUNCky60.Dep
Luego "registra" desde ms-dos el componente tecleando esto:
RegSvr32 \Windows\System32\FUNCky60.DLL
Y listo , deberas registrar Funcky en cada uno de los computadores donde vayas a ejecutar el programa.
2 cosillas, el EXE esta construido con la version completa de funcky, por lo que si te falla algun componente es que estas tratando de invocar algun elemento de funcky que no esta en la version de evaluacion.
Utiliza la clase TOleAUTO nativa de xHarbour, si estas trabajando con Harbour igual tendras que agregar la TOLE por fuera.
El componente funcky lo tienes que registrar en tu ordenador para que pueda funcionar.
Esto se hace asi:
copia estos archivos a la carpeta windows\system32
FUNCky60.DLL, FUNCky60.TLB y FUNCky60.Dep
Luego "registra" desde ms-dos el componente tecleando esto:
RegSvr32 \Windows\System32\FUNCky60.DLL
Y listo , deberas registrar Funcky en cada uno de los computadores donde vayas a ejecutar el programa.
Saludos
R.F.
R.F.
Hola René
Una preguntita sobre el error "Error description: Error TOleAuto/-1 Unknown error: TOLEAUTO:NEW "
Yo compilo con xharbour y a mi me sale éste error en algunas aplicaciones, no te entiendo qué quieres decir con utilizar la clase TOleAuto nativa de xHarbour; yo entiendo que al compilar con xHarbour, éste utiliza sus propias clases.
Me puedes aclarar ésto a ver si soy capaz de continuar con éste tema ?
Saludos
Jose Luis
Una preguntita sobre el error "Error description: Error TOleAuto/-1 Unknown error: TOLEAUTO:NEW "
Yo compilo con xharbour y a mi me sale éste error en algunas aplicaciones, no te entiendo qué quieres decir con utilizar la clase TOleAuto nativa de xHarbour; yo entiendo que al compilar con xHarbour, éste utiliza sus propias clases.
Me puedes aclarar ésto a ver si soy capaz de continuar con éste tema ?
Saludos
Jose Luis
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
Hola Jairo
Un amigo mio compró list & label, y lo dejó por imposible, no pudo ponerlo en marcha, él pretendía general códigos de barras en formato PDF417, que parece ser que list & label los genera, pero se volvió majareta y no lo consiguíó, ya que todo viene en inglés y principalmente en alemán.
Saludos
Jose Luis
Un amigo mio compró list & label, y lo dejó por imposible, no pudo ponerlo en marcha, él pretendía general códigos de barras en formato PDF417, que parece ser que list & label los genera, pero se volvió majareta y no lo consiguíó, ya que todo viene en inglés y principalmente en alemán.
Saludos
Jose Luis
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
Intento crear una aplicación con éstad dos líneas, y me da el siguiente error:
Error description: Error BASE/1003 Variable does not exist: LL_PROJECT_LIST
La verdad es que yo nunca he trabajado con activex , si me puedes mandar una parte de codigo para ver como funciona el tema te lo agradezco.
Un saludo
Jose Luis
Error description: Error BASE/1003 Variable does not exist: LL_PROJECT_LIST
La verdad es que yo nunca he trabajado con activex , si me puedes mandar una parte de codigo para ver como funciona el tema te lo agradezco.
Un saludo
Jose Luis
-
- Posts: 13
- Joined: Thu Mar 08, 2007 6:04 pm
- Location: Zaragoza, España
Hola JoseLuis,
Incluye la linea #xtranslate LL_PROJECT_LIST => 2, o bien, utiliza directamente el valor.
En "C:\Archivos de programa\combit\LL12\Programmable Samples and Declarations\Alaska Xbase++" se encuentra cmbtll12.ch
#include "FiveWin.ch"
#include "cmbtll12.ch"
Global oActiveX, oWnd, hJob, nRet
Function Main()
Local cEvents := ""
LOCAL aField, aType, aLen, aDec, sName
LOCAL FldType, FldContent, DateBuffer, lExpr, I:=1, bAsField:=.T.
USE ARTICLE NEW
GO TOP
aField := Array( ARTICLE->(FCount()) )
aType := Array( ARTICLE->(FCount()) )
aLen := Array( ARTICLE->(FCount()) )
aDec := Array( ARTICLE->(FCount()) )
sname := "article.lst"
DEFINE WINDOW oWnd TITLE "FiveWin ActiveX Support"
oActiveX = TActiveX():New( oWnd, "L12.List-Label12_Ctrl_32.1" )
oWnd:oClient = oActiveX // To fill the entire window surface
//US: Read field info from database
AFields( aField, aType, aLen, aDec )
//US: open List & Label job, retrieve job handle
hJob := 1
//US: Enable multiple table lines
oActiveX:Do( "LlSetOption", LL_OPTION_MULTIPLETABLELINES, 1)
//US: clear DLL-internal field buffer
oActiveX:Do( "LlDefineFieldStart" )
// US: Define Fields
FOR I = 1 to ARTICLE->(Fcount())
DateBuffer = Replicate(chr(0), 255)
DO CASE
CASE aType == "N"
FldType=LL_NUMERIC
FldContent=Str( FieldGet(i) )
CASE aType == "D"
FldType=LL_DATE
//US: Convert to Julian Date
//US: Create function tree
lExpr = oActiveX:Do("LlExprParse", "CTOD( FieldGet(i) )", .F. )
//US: Evaluate expression
oActiveX:Do("LlExprEvaluate", lExpr, @DateBuffer )
//US: Free expression
oActiveX:Do("LlExprFree", lExpr )
FldContent = DateBuffer
CASE aType == "L"
FldType=LL_BOOLEAN
if FieldGet(i) = .F.
FldContent="FALSE"
else
FldContent="TRUE" endif
CASE aType == "C"
FldType=LL_TEXT
FldContent=Trim(FieldGet(i))
// US: for article number generate EAN128-barcode
if i=1
DO CASE
// US: Distinguish between field and variable declaration
CASE bAsField==.F.
oActiveX:Do("LlDefineVariableExt", "ARTICLENO_EAN128", Trim(FieldGet(i)), LL_BARCODE_EAN128 )
CASE bAsField==.T.
oActiveX:Do("LlDefineFieldExt", "ARTICLENO_EAN128", Trim(FieldGet(i)), LL_BARCODE_EAN128 )
END CASE
endif
CASE aType == "M"
FldType=LL_TEXT
FldContent=FieldGet(i)
END CASE
//US: pass data to List & Label
DO CASE
CASE bAsField==.F.
oActiveX:Do("LlDefineVariableExt", aField, FldContent, FldType )
CASE bAsField==.T.
oActiveX:Do("LlDefineFieldExt",aField, FldContent, FldType )
END CASE
NEXT I
// US: start designer
oActiveX:Do("LlSetPrinterDefaultsDir",hJob,"C:\Windows\Temp")
oActiveX:Do("LlDefineLayout",oWnd:hWnd,"Designer",LL_PROJECT_LIST, "article.lst")
ACTIVATE WINDOW oWnd VALID ( dbCloseArea(),.t. )
Return
Incluye la linea #xtranslate LL_PROJECT_LIST => 2, o bien, utiliza directamente el valor.
En "C:\Archivos de programa\combit\LL12\Programmable Samples and Declarations\Alaska Xbase++" se encuentra cmbtll12.ch
#include "FiveWin.ch"
#include "cmbtll12.ch"
Global oActiveX, oWnd, hJob, nRet
Function Main()
Local cEvents := ""
LOCAL aField, aType, aLen, aDec, sName
LOCAL FldType, FldContent, DateBuffer, lExpr, I:=1, bAsField:=.T.
USE ARTICLE NEW
GO TOP
aField := Array( ARTICLE->(FCount()) )
aType := Array( ARTICLE->(FCount()) )
aLen := Array( ARTICLE->(FCount()) )
aDec := Array( ARTICLE->(FCount()) )
sname := "article.lst"
DEFINE WINDOW oWnd TITLE "FiveWin ActiveX Support"
oActiveX = TActiveX():New( oWnd, "L12.List-Label12_Ctrl_32.1" )
oWnd:oClient = oActiveX // To fill the entire window surface
//US: Read field info from database
AFields( aField, aType, aLen, aDec )
//US: open List & Label job, retrieve job handle
hJob := 1
//US: Enable multiple table lines
oActiveX:Do( "LlSetOption", LL_OPTION_MULTIPLETABLELINES, 1)
//US: clear DLL-internal field buffer
oActiveX:Do( "LlDefineFieldStart" )
// US: Define Fields
FOR I = 1 to ARTICLE->(Fcount())
DateBuffer = Replicate(chr(0), 255)
DO CASE
CASE aType == "N"
FldType=LL_NUMERIC
FldContent=Str( FieldGet(i) )
CASE aType == "D"
FldType=LL_DATE
//US: Convert to Julian Date
//US: Create function tree
lExpr = oActiveX:Do("LlExprParse", "CTOD( FieldGet(i) )", .F. )
//US: Evaluate expression
oActiveX:Do("LlExprEvaluate", lExpr, @DateBuffer )
//US: Free expression
oActiveX:Do("LlExprFree", lExpr )
FldContent = DateBuffer
CASE aType == "L"
FldType=LL_BOOLEAN
if FieldGet(i) = .F.
FldContent="FALSE"
else
FldContent="TRUE" endif
CASE aType == "C"
FldType=LL_TEXT
FldContent=Trim(FieldGet(i))
// US: for article number generate EAN128-barcode
if i=1
DO CASE
// US: Distinguish between field and variable declaration
CASE bAsField==.F.
oActiveX:Do("LlDefineVariableExt", "ARTICLENO_EAN128", Trim(FieldGet(i)), LL_BARCODE_EAN128 )
CASE bAsField==.T.
oActiveX:Do("LlDefineFieldExt", "ARTICLENO_EAN128", Trim(FieldGet(i)), LL_BARCODE_EAN128 )
END CASE
endif
CASE aType == "M"
FldType=LL_TEXT
FldContent=FieldGet(i)
END CASE
//US: pass data to List & Label
DO CASE
CASE bAsField==.F.
oActiveX:Do("LlDefineVariableExt", aField, FldContent, FldType )
CASE bAsField==.T.
oActiveX:Do("LlDefineFieldExt",aField, FldContent, FldType )
END CASE
NEXT I
// US: start designer
oActiveX:Do("LlSetPrinterDefaultsDir",hJob,"C:\Windows\Temp")
oActiveX:Do("LlDefineLayout",oWnd:hWnd,"Designer",LL_PROJECT_LIST, "article.lst")
ACTIVATE WINDOW oWnd VALID ( dbCloseArea(),.t. )
Return
-
- Posts: 287
- Joined: Fri Apr 14, 2006 5:52 pm
- Location: Córdoba (España)