Jump to content
Fivewin Brasil

ECF urano - fit logger DLL


aokisantos

Recommended Posts




// DECLARAÇÕES DA DLL DA IMPRESSORA URANO(ECF)

/*
Amigo,

Tenho essas que usei na homologação em 2011. Veja se ajuda.


Um abraço,
*/


xdll := LOADLIB32("DLLG2.DLL")
xDllAdicional := LOADLIB32("DLLG2_Gerador.dll")

/*
Faltou a geração do arquivo.

Segue:
*/

if _dataregis
sele aecf
seek alta_cripto( cNumSerieECF )

cArqRetorno := localexe+'ATOCOTEPE_1704.TXT'
ferase( cArqRetorno )
ferase( localexe+'LEITURAX.FMT')
ferase( localexe+'LEITURAMF.FMT')
ferase( localexe+'LEITURAMFD.FMT')
ferase( localexe+'LOG.GII')

sysrefresh()
DT_Gera_AtoCotepePafData( 'COM'+str(aecf->porta,1), rtrim(aecf->modeloecf), cArqRetorno, dtoc(dDataInicial), dtoc(dDataFinal) )
if file( cArqRetorno )
lExecutou := .t.
nHandle := fOpen( cArqRetorno, 2 )
fSeek (nHandle, 0, 2)
fWrite(nHandle, CRLF)
fClose(nHandle)
GeraAssinaturaDigital( cArqRetorno )
endif
sysrefresh()

endif


/////////////////////////////////////////////////

/*
Postei parte do código devido ao programa ser grande. Mas basta ver os nomes das variáveis.

Curtir
Um abraço,

Alexandre Pereira
*/

// Declarações DataRegis/Urano

DLL32 FUNCTION DT_INICIA (Canal AS STRING) ;
AS _INT PASCAL FROM 'DLLG2_IniciaDriver' ;
LIB xDll

DLL32 FUNCTION DT_ENCERRA(Canal AS LONG) ;
AS _INT PASCAL FROM 'DLLG2_EncerraDriver' ;
LIB xDll

DLL32 FUNCTION DT_LISTAPARAM( Canal AS LONG, NomeParam AS STRING, ;
TamList AS LONG ) ;
AS STRING FROM 'DLLG2_ListaParams' ;
LIB xDll

DLL32 FUNCTION DT_EXECUTA(Canal AS LONG, Comando AS STRING) ;
AS _INT PASCAL FROM 'DLLG2_ExecutaComando' ;
LIB xDll

DLL32 FUNCTION DT_CODERRO(Canal AS LONG) ;
AS _INT PASCAL FROM 'DLLG2_ObtemCodErro' ;
LIB xDll

DLL32 FUNCTION DT_NOMERRO(Canal AS LONG, NomeErro AS PTR, ;
TamNome AS PTR) ;
AS STRING PASCAL FROM 'DLLG2_ObtemNomeErro' ;
LIB xDll


DLL32 FUNCTION DT_CIRCUNSTACIA(Canal AS LONG, Circunst AS PTR, ;
TamCirc AS PTR) ;
AS STRING PASCAL FROM 'DLLG2_ObtemCircunstancia' ;
LIB xDll

DLL32 FUNCTION DT_TIMEOUT(Canal AS LONG, Timeout AS LONG) ;
AS NIL PASCAL FROM 'DLLG2_DefineTimeout' ;
LIB xDll

DLL32 FUNCTION DT_DEFLOG(NomeArquivo AS STRING) ;
AS NIL PASCAL FROM 'DLLG2_SetaArquivoLog' ;
LIB xDll

DLL32 FUNCTION DT_LIMPAPARAM(Canal AS LONG) ;
AS NIL PASCAL FROM 'DLLG2_LimpaParams' ;
LIB xDll

DLL32 FUNCTION DT_ADDPARAM(Canal AS LONG, NomeParam AS STRING, ;
ValorParam AS STRING, TipoParam AS LONG) ;
AS NIL PASCAL FROM 'DLLG2_AdicionaParam' ;
LIB xDll

DLL32 FUNCTION DT_TOTRETORNO(Canal AS LONG) ;
AS _INT PASCAL FROM 'DLLG2_TotalRetornos' ;
LIB xDll

DLL32 FUNCTION DT_RETORNO(Canal AS LONG, Indice AS LONG, ;
NomeRetorno AS STRING, TamNome AS LONG, ValorRetorno AS STRING, ;
TamvalorRetorno AS LONG) ;
AS _INT PASCAL FROM 'DLLG2_Retorno' ;
LIB xDll

DLL32 FUNCTION DT_GETRETORNO(Canal AS LONG, Retornos AS PTR, ;
TamRetornos AS LONG) ;
AS STRING PASCAL FROM 'DLLG2_ObtemRetornos' ;
LIB xDll

DLL32 FUNCTION DT_CONFVELOCIDADE(Canal AS LONG, Speed AS LONG) ;
AS STRING PASCAL FROM 'DLLG2_ConfiguraDriver' ;
LIB xDll

DLL32 FUNCTION DT_Gera_AtoCotepePafData( Porta AS STRING, Modelo AS STRING, Arquivo AS STRING, DataIni AS STRING );
AS _INT PASCAL from 'Gera_AtoCotepe1704';
LIB xDLLAdicional


/*
Um abraço,

Alexandre Pereira
*/

Faltou a geração do arquivo.

Segue:


if _dataregis
sele aecf
seek alta_cripto( cNumSerieECF )

cArqRetorno := localexe+'ATOCOTEPE_1704.TXT'
ferase( cArqRetorno )
ferase( localexe+'LEITURAX.FMT')
ferase( localexe+'LEITURAMF.FMT')
ferase( localexe+'LEITURAMFD.FMT')
ferase( localexe+'LOG.GII')

sysrefresh()
DT_Gera_AtoCotepePafData( 'COM'+str(aecf->porta,1), rtrim(aecf->modeloecf), cArqRetorno, dtoc(dDataInicial), dtoc(dDataFinal) )
if file( cArqRetorno )
lExecutou := .t.
nHandle := fOpen( cArqRetorno, 2 )
fSeek (nHandle, 0, 2)
fWrite(nHandle, CRLF)
fClose(nHandle)
GeraAssinaturaDigital( cArqRetorno )
endif
sysrefresh()

endif


/////////////////////////////////////////////////


Postei parte do código devido ao programa ser grande. Mas basta ver os nomes das variáveis.



Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...