Changeset: 164 v1.19.11
- Soporte de #IF #ENDIF anidados (se usa para saber qué código no evaluar en busca de los identificadores de PROCEDURE)
This commit is contained in:
@@ -107,7 +107,6 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase
|
|||||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||||
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
||||||
loCnv.DBF_Conversion_Support = 2
|
|
||||||
|
|
||||||
oFXU_LIB.copiarArchivosParaTest( lc_File )
|
oFXU_LIB.copiarArchivosParaTest( lc_File )
|
||||||
|
|
||||||
@@ -177,7 +176,6 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase
|
|||||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||||
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
||||||
loCnv.DBF_Conversion_Support = 2
|
|
||||||
|
|
||||||
oFXU_LIB.copiarArchivosParaTest( lc_File )
|
oFXU_LIB.copiarArchivosParaTest( lc_File )
|
||||||
|
|
||||||
@@ -248,7 +246,6 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase
|
|||||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||||
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
||||||
loCnv.DBF_Conversion_Support = 2
|
|
||||||
|
|
||||||
oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') )
|
oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') )
|
||||||
|
|
||||||
@@ -319,7 +316,6 @@ DEFINE CLASS ft__foxbin2prg__c_conversor_prg_a_dbf AS FxuTestCase OF FxuTestCase
|
|||||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||||
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
||||||
loCnv.DBF_Conversion_Support = 2
|
|
||||||
|
|
||||||
oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') )
|
oFXU_LIB.copiarArchivosParaTest( FORCEEXT(lc_File,'*') )
|
||||||
|
|
||||||
|
|||||||
@@ -291,8 +291,6 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg
|
|||||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||||
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
||||||
loCnv.DBF_Conversion_Support = 2
|
|
||||||
loCnv.l_UseTimestamps = .T.
|
|
||||||
|
|
||||||
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
|
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
|
||||||
|
|
||||||
@@ -367,8 +365,6 @@ DEFINE CLASS ut__foxbin2prg AS FxuTestCase OF FxuTestCase.prg
|
|||||||
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
lc_InputFile = FORCEPATH( lc_File, 'TESTS\DATOS_READONLY' )
|
||||||
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
lc_OutputFile = FORCEPATH( lc_File, 'TESTS\DATOS_TEST' )
|
||||||
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
lcTipoBinario = UPPER( JUSTEXT( lc_OutputFile ) )
|
||||||
loCnv.DBF_Conversion_Support = 2
|
|
||||||
loCnv.l_UseTimestamps = .T.
|
|
||||||
|
|
||||||
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
|
oFXU_LIB.copiarArchivosParaTest( FORCEEXT( lc_File, LEFT( JUSTEXT(lc_File),2 ) + '?' ) )
|
||||||
|
|
||||||
|
|||||||
@@ -2785,28 +2785,47 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
EXTERNAL ARRAY ta_ID_Bloques, taBloquesExclusion
|
EXTERNAL ARRAY ta_ID_Bloques, taBloquesExclusion
|
||||||
|
|
||||||
TRY
|
TRY
|
||||||
LOCAL lnBloques, I, X, lnPrimerID, lnLen_IDFinBQ
|
LOCAL lnBloques, I, X, lnPrimerID, lnLen_IDFinBQ, lnID_Bloques_Count, lcWord
|
||||||
DIMENSION taBloquesExclusion(1,2)
|
DIMENSION taBloquesExclusion(1,2)
|
||||||
STORE 0 TO tnBloquesExclusion, lnPrimerID, I, X, lnLen_IDFinBQ
|
STORE 0 TO tnBloquesExclusion, lnPrimerID, I, X, lnLen_IDFinBQ
|
||||||
|
|
||||||
IF tnCodeLines > 1
|
IF tnCodeLines > 1
|
||||||
IF EMPTY(ta_ID_Bloques)
|
IF EMPTY(ta_ID_Bloques)
|
||||||
DIMENSION ta_ID_Bloques(2,2)
|
DIMENSION ta_ID_Bloques(2,2)
|
||||||
ta_ID_Bloques(1,1) = '#IF .F.'
|
ta_ID_Bloques(1,1) = '#IF'
|
||||||
ta_ID_Bloques(1,2) = '#ENDI'
|
ta_ID_Bloques(1,2) = '#ENDI'
|
||||||
ta_ID_Bloques(2,1) = C_TEXT
|
ta_ID_Bloques(2,1) = 'TEXT'
|
||||||
ta_ID_Bloques(2,2) = C_ENDTEXT
|
ta_ID_Bloques(2,2) = 'ENDT'
|
||||||
|
lnID_Bloques_Count = ALEN( ta_ID_Bloques, 1 )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
*-- B<>squeda del ID de inicio de bloque
|
*-- B<>squeda del ID de inicio de bloque
|
||||||
FOR I = 1 TO tnCodeLines
|
FOR I = 1 TO tnCodeLines
|
||||||
lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) ) && Reduzco los espacios. Ej: '#IF .F. && cmt' ==> '#IF .F.&&cmt'
|
* Reduzco los espacios. Ej: '#IF .F. && cmt' ==> '#IF .F.&&cmt'
|
||||||
|
lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) )
|
||||||
|
|
||||||
IF THIS.lineIsOnlyCommentAndNoMetadata( @lcLine )
|
IF THIS.lineIsOnlyCommentAndNoMetadata( @lcLine )
|
||||||
LOOP
|
LOOP
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
lnPrimerID = ASCAN( ta_ID_Bloques, lcLine, 1, 0, 1, 1+8 )
|
lnPrimerID = 0
|
||||||
|
|
||||||
|
FOR X = 1 TO lnID_Bloques_Count
|
||||||
|
IF UPPER( LEFT( lcLine, LEN(ta_ID_Bloques(X,1)) ) ) == ta_ID_Bloques(X,1)
|
||||||
|
*-- Evaluar casos especiales
|
||||||
|
lcWord = UPPER( ALLTRIM(GETWORDNUM(lcLine,1) ) )
|
||||||
|
|
||||||
|
DO CASE
|
||||||
|
CASE ta_ID_Bloques(X,1) == 'TEXT' AND NOT lcWord == 'TEXT'
|
||||||
|
LOOP
|
||||||
|
CASE ta_ID_Bloques(X,2) == 'ENDT' AND NOT lcWord == LEFT( 'ENDTEXT', LEN(lcWord) )
|
||||||
|
LOOP
|
||||||
|
ENDCASE
|
||||||
|
|
||||||
|
lnPrimerID = X
|
||||||
|
EXIT
|
||||||
|
ENDIF
|
||||||
|
ENDFOR
|
||||||
|
|
||||||
IF lnPrimerID > 0 && Se ha identificado un ID de bloque excluyente
|
IF lnPrimerID > 0 && Se ha identificado un ID de bloque excluyente
|
||||||
tnBloquesExclusion = tnBloquesExclusion + 1
|
tnBloquesExclusion = tnBloquesExclusion + 1
|
||||||
@@ -2816,13 +2835,20 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
|
|
||||||
* B<>squeda del ID de fin de bloque
|
* B<>squeda del ID de fin de bloque
|
||||||
FOR I = I + 1 TO tnCodeLines
|
FOR I = I + 1 TO tnCodeLines
|
||||||
lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) ) && Reduzco los espacios. Ej: '#IF .F. && cmt' ==> '#IF .F.&&cmt'
|
* Reduzco los espacios. Ej: '#IF .F. && cmt' ==> '#IF .F.&&cmt'
|
||||||
|
lcLine = LTRIM( STRTRAN( STRTRAN( CHRTRAN( taCodeLines(I), CHR(9), ' ' ), ' ', ' ' ), ' ', ' ' ) )
|
||||||
|
|
||||||
IF THIS.lineIsOnlyCommentAndNoMetadata( @lcLine )
|
IF THIS.lineIsOnlyCommentAndNoMetadata( @lcLine )
|
||||||
LOOP
|
LOOP
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
IF LEFT( lcLine, lnLen_IDFinBQ ) == ta_ID_Bloques(lnPrimerID,2) && Fin de bloque encontrado (#ENDI, ENDTEXT, etc)
|
lcWord = UPPER( ALLTRIM(GETWORDNUM(lcLine,1) ) )
|
||||||
|
|
||||||
|
IF LEFT( UPPER(lcLine), lnLen_IDFinBQ ) == ta_ID_Bloques(lnPrimerID,2) && Fin de bloque encontrado (#ENDI, ENDTEXT, etc)
|
||||||
|
*-- Evaluar casos especiales
|
||||||
|
IF ta_ID_Bloques(lnPrimerID,2) == 'ENDT' AND NOT lcWord == LEFT( 'ENDTEXT', LEN(lcWord) )
|
||||||
|
LOOP
|
||||||
|
ENDIF
|
||||||
taBloquesExclusion(tnBloquesExclusion,2) = I
|
taBloquesExclusion(tnBloquesExclusion,2) = I
|
||||||
EXIT
|
EXIT
|
||||||
ENDIF
|
ENDIF
|
||||||
@@ -3882,7 +3908,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
|
|
||||||
IF lnPos2 > 0
|
IF lnPos2 > 0
|
||||||
*-- Con comentarios
|
*-- Con comentarios
|
||||||
lcPAM_Name = RTRIM( SUBSTR( tcLine, lnPos+1, lnPos2 - lnPos - 1 ), 0, ' ', CHR(9) )
|
lcPAM_Name = LOWER( RTRIM( SUBSTR( tcLine, lnPos+1, lnPos2 - lnPos - 1 ), 0, ' ', CHR(9) ) )
|
||||||
lcItem = lcPAM_Name + ' ' + SUBSTR( tcLine, lnPos2 + 3 ) + CR_LF
|
lcItem = lcPAM_Name + ' ' + SUBSTR( tcLine, lnPos2 + 3 ) + CR_LF
|
||||||
|
|
||||||
*-- Separo propiedades y m<>todos
|
*-- Separo propiedades y m<>todos
|
||||||
@@ -3893,7 +3919,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
ENDIF
|
ENDIF
|
||||||
ELSE
|
ELSE
|
||||||
*-- Sin comentarios
|
*-- Sin comentarios
|
||||||
lcPAM_Name = RTRIM( SUBSTR( tcLine, lnPos+1 ), 0, ' ', CHR(9) )
|
lcPAM_Name = LOWER( RTRIM( SUBSTR( tcLine, lnPos+1 ), 0, ' ', CHR(9) ) )
|
||||||
lcItem = lcPAM_Name + IIF(ISALPHA(lcPAM_Name), '', ' ') + CR_LF
|
lcItem = lcPAM_Name + IIF(ISALPHA(lcPAM_Name), '', ' ') + CR_LF
|
||||||
|
|
||||||
*-- Separo propiedades y m<>todos
|
*-- Separo propiedades y m<>todos
|
||||||
@@ -3959,7 +3985,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
ELSE
|
ELSE
|
||||||
toClase._Class = ALLTRIM( CHRTRAN( STREXTRACT( tcLine + ' OF ', ' AS ', ' OF ', 1, 1 ), ["'], [] ) )
|
toClase._Class = ALLTRIM( CHRTRAN( STREXTRACT( tcLine + ' OF ', ' AS ', ' OF ', 1, 1 ), ["'], [] ) )
|
||||||
ENDIF
|
ENDIF
|
||||||
toClase._ClassLoc = ALLTRIM( CHRTRAN( STREXTRACT( tcLine + ' OLEPUBLIC', ' OF ', ' OLEPUBLIC', 1, 1 ), ["'], [] ) )
|
toClase._ClassLoc = LOWER( ALLTRIM( CHRTRAN( STREXTRACT( tcLine + ' OLEPUBLIC', ' OF ', ' OLEPUBLIC', 1, 1 ), ["'], [] ) ) )
|
||||||
toClase._OlePublic = ' OLEPUBLIC' $ UPPER(tcLine)
|
toClase._OlePublic = ' OLEPUBLIC' $ UPPER(tcLine)
|
||||||
toClase._Comentario = tc_Comentario
|
toClase._Comentario = tc_Comentario
|
||||||
toClase._Inicio = I
|
toClase._Inicio = I
|
||||||
@@ -4124,7 +4150,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
|
|
||||||
IF LEFT(tcLine, 7) == 'HIDDEN '
|
IF LEFT(tcLine, 7) == 'HIDDEN '
|
||||||
llBloqueEncontrado = .T.
|
llBloqueEncontrado = .T.
|
||||||
toClase._HiddenProps = ALLTRIM( SUBSTR( tcLine, 8 ) )
|
toClase._HiddenProps = LOWER( ALLTRIM( SUBSTR( tcLine, 8 ) ) )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
RETURN llBloqueEncontrado
|
RETURN llBloqueEncontrado
|
||||||
@@ -4144,9 +4170,9 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
IF LEFT(tcLine, 9) == '#INCLUDE '
|
IF LEFT(tcLine, 9) == '#INCLUDE '
|
||||||
llBloqueEncontrado = .T.
|
llBloqueEncontrado = .T.
|
||||||
IF THIS.c_Type = 'SCX'
|
IF THIS.c_Type = 'SCX'
|
||||||
toModulo._includeFile = ALLTRIM( CHRTRAN( SUBSTR( tcLine, 10 ), ["'], [] ) )
|
toModulo._includeFile = LOWER( ALLTRIM( CHRTRAN( SUBSTR( tcLine, 10 ), ["'], [] ) ) )
|
||||||
ELSE
|
ELSE
|
||||||
toClase._includeFile = ALLTRIM( CHRTRAN( SUBSTR( tcLine, 10 ), ["'], [] ) )
|
toClase._includeFile = LOWER( ALLTRIM( CHRTRAN( SUBSTR( tcLine, 10 ), ["'], [] ) ) )
|
||||||
ENDIF
|
ENDIF
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
@@ -4296,7 +4322,7 @@ DEFINE CLASS c_conversor_prg_a_bin AS c_conversor_base
|
|||||||
|
|
||||||
IF LEFT(tcLine, 10) == 'PROTECTED '
|
IF LEFT(tcLine, 10) == 'PROTECTED '
|
||||||
llBloqueEncontrado = .T.
|
llBloqueEncontrado = .T.
|
||||||
toClase._ProtectedProps = ALLTRIM( SUBSTR( tcLine, 11 ) )
|
toClase._ProtectedProps = LOWER( ALLTRIM( SUBSTR( tcLine, 11 ) ) )
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
RETURN llBloqueEncontrado
|
RETURN llBloqueEncontrado
|
||||||
@@ -7494,8 +7520,8 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
|||||||
IF tnMethodCount > 0 THEN
|
IF tnMethodCount > 0 THEN
|
||||||
FOR I = 1 TO tnMethodCount
|
FOR I = 1 TO tnMethodCount
|
||||||
lcMethod = CHRTRAN( taMethods(I,1), '^', '' )
|
lcMethod = CHRTRAN( taMethods(I,1), '^', '' )
|
||||||
lnProtectedItem = ASCAN( taProtected, taMethods(I,1), 1, 0, 0, 0)
|
lnProtectedItem = ASCAN( taProtected, taMethods(I,1), 1, 0, 0, 1)
|
||||||
lnCommentRow = ASCAN( taPropsAndComments, '*' + lcMethod, 1, 0, 1, 8)
|
lnCommentRow = ASCAN( taPropsAndComments, '*' + lcMethod, 1, 0, 1, 1+8)
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
CASE lnProtectedItem = 0
|
CASE lnProtectedItem = 0
|
||||||
@@ -7581,17 +7607,17 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
|||||||
LOOP
|
LOOP
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
lnProtectedItem = ASCAN(taProtected, taPropsAndValues(I,1), 1, 0, 0, 0)
|
lnProtectedItem = ASCAN(taProtected, taPropsAndValues(I,1), 1, 0, 0, 1)
|
||||||
|
|
||||||
DO CASE
|
DO CASE
|
||||||
CASE lnProtectedItem = 0
|
CASE lnProtectedItem = 0
|
||||||
*-- Propiedad com<6F>n
|
*-- Propiedad com<6F>n
|
||||||
|
|
||||||
CASE taProtected(lnProtectedItem) == taPropsAndValues(I,1)
|
CASE LOWER( taProtected(lnProtectedItem) ) == LOWER( taPropsAndValues(I,1) )
|
||||||
*-- Propiedad protegida
|
*-- Propiedad protegida
|
||||||
lcProtectedProp = lcProtectedProp + ',' + taPropsAndValues(I,1)
|
lcProtectedProp = lcProtectedProp + ',' + taPropsAndValues(I,1)
|
||||||
|
|
||||||
CASE taProtected(lnProtectedItem) == taPropsAndValues(I,1) + '^'
|
CASE LOWER( taProtected(lnProtectedItem) ) == LOWER( taPropsAndValues(I,1) + '^' )
|
||||||
*-- Propiedad oculta
|
*-- Propiedad oculta
|
||||||
lcHiddenProp = lcHiddenProp + ',' + taPropsAndValues(I,1)
|
lcHiddenProp = lcHiddenProp + ',' + taPropsAndValues(I,1)
|
||||||
|
|
||||||
@@ -7610,7 +7636,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
|||||||
<<>> <<taPropsAndValues(I,1)>> = <<taPropsAndValues(I,2)>>
|
<<>> <<taPropsAndValues(I,1)>> = <<taPropsAndValues(I,2)>>
|
||||||
ENDTEXT
|
ENDTEXT
|
||||||
|
|
||||||
lnComment = ASCAN( taPropsAndComments, taPropsAndValues(I,1), 1, 0, 1, 8)
|
lnComment = ASCAN( taPropsAndComments, taPropsAndValues(I,1), 1, 0, 1, 1+8)
|
||||||
|
|
||||||
IF lnComment > 0 AND NOT EMPTY(taPropsAndComments(lnComment,2))
|
IF lnComment > 0 AND NOT EMPTY(taPropsAndComments(lnComment,2))
|
||||||
TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2
|
TEXT TO C_FB2PRG_CODE ADDITIVE TEXTMERGE NOSHOW FLAGS 1 PRETEXT 1+2
|
||||||
@@ -7696,7 +7722,7 @@ DEFINE CLASS c_conversor_bin_a_prg AS c_conversor_base
|
|||||||
|
|
||||||
LOCAL lcOF_Classlib, llOleObject
|
LOCAL lcOF_Classlib, llOleObject
|
||||||
lcOF_Classlib = ''
|
lcOF_Classlib = ''
|
||||||
llOleObject = ( ASCAN( ta_NombresObjsOle, toRegClass.OBJNAME, 1, 0, 1, 8) > 0 )
|
llOleObject = ( ASCAN( ta_NombresObjsOle, toRegClass.OBJNAME, 1, 0, 1, 1+8) > 0 )
|
||||||
|
|
||||||
IF NOT EMPTY(toRegClass.CLASSLOC)
|
IF NOT EMPTY(toRegClass.CLASSLOC)
|
||||||
lcOF_Classlib = 'OF "' + ALLTRIM(toRegClass.CLASSLOC) + '" '
|
lcOF_Classlib = 'OF "' + ALLTRIM(toRegClass.CLASSLOC) + '" '
|
||||||
|
|||||||
Reference in New Issue
Block a user