Página 1 de 1

Converter pra xHabour

Enviado: 27 Jul 2017 23:07
por JoséQuintas
Estou preparando uma conversão da SefazClass pra xHarbour, mas cheguei numa diferença que não sei como resolver.

Código: Selecionar todos

   #xcommand win_OleCreateOject( <cName> )      => xhb_CreateObject( <cName> )
   #xcommand hb_MemoWrit( <cFile>, <cText> )    => MemoWrit( <cFile>, <cText>, .T. )
   #xcommand hb_At( <cText>, <nStart>, <nEnd> ) => At( <cText>, <nStart>, <nEnd> )
   #xcommand hb_Eol()                           => Chr(13) + Chr(10)
   #xcommand wapi_MessageBox( <nHwnd>, <cText>, <cTitle> ) => Alert( <cText> )
   #xcommand hb_Hash()                          => Hash()
   #xcommand BEGIN SEQUENCE WITH __BreakBlock() => BEGIN SEQUENCE
   #xcommand CREATE <classname> STATIC          => CLASS <classname>
Essa última linha, referente a criar classe.
O que tem de errado, ou precisa algum #include no xHarbour?
Dando diferença na criação e nos métodos, mas pode ser que estejam relacionados.
d:\cdrom\FONTES\INTEGRA\sefazclass\source>\xharbour\bin\harbour *.prg -i..\include
xHarbour 1.2.3 Intl. (SimpLex) (Build 20170513)
Copyright 1999-2017, http://www.xharbour.org http://www.harbour-project.org/
Compiling 'ze_capicom.prg'...
Generating C source output to 'ze_capicom.c'...
Done.
Lines 53, Functions/Procedures 3, pCodes 156
Compiling 'ze_digitodoc.prg'...
Generating C source output to 'ze_digitodoc.c'...
Done.
Lines 246, Functions/Procedures 12, pCodes 985
Compiling 'ze_extenso.prg'...
ze_extenso.prg(49) Error E0030 Syntax error: "syntax error at 'CLASS'"
ze_extenso.prg(51) Error E0030 Syntax error: "syntax error at 'EXTENSO'"
ze_extenso.prg(52) Error E0030 Syntax error: "syntax error at 'EXTENSOUNIDADE'"
ze_extenso.prg(53) Error E0030 Syntax error: "syntax error at 'EXTENSODEZENA'"
ze_extenso.prg(54) Error E0030 Syntax error: "syntax error at 'EXTENSOCENTENA'"
ze_extenso.prg(55) Error E0030 Syntax error: "syntax error at 'EXTENSOGRUPOMILHAR'"
ze_extenso.prg(56) Error E0030 Syntax error: "syntax error at 'EXTENSOBLOCO'"
ze_extenso.prg(58) Error E0020 Incomplete statement or unbalanced delimiters
ze_extenso.prg(60) Error E0030 Syntax error: "syntax error at 'EXTENSO'"
ze_extenso.prg(62) Error E0004 LOCAL declaration follows executable statement
ze_extenso.prg(93) Error E0030 Syntax error: "syntax error at 'EXTENSOUNIDADE'"
ze_extenso.prg(95) Error E0004 LOCAL declaration follows executable statement
ze_extenso.prg(121) Error E0030 Syntax error: "syntax error at 'EXTENSODEZENA'"
ze_extenso.prg(123) Error E0004 LOCAL declaration follows executable statement
ze_extenso.prg(138) Error E0030 Syntax error: "syntax error at 'EXTENSOCENTENA'"
ze_extenso.prg(140) Error E0004 LOCAL declaration follows executable statement
ze_extenso.prg(156) Error E0030 Syntax error: "syntax error at 'EXTENSOGRUPOMILHAR'"
ze_extenso.prg(158) Error E0004 LOCAL declaration follows executable statement
ze_extenso.prg(178) Error E0030 Syntax error: "syntax error at 'EXTENSOBLOCO'"
ze_extenso.prg(180) Error E0004 LOCAL declaration follows executable statement
20 errors

Converter pra xHabour

Enviado: 27 Jul 2017 23:11
por JoséQuintas
ok resolvido esse.
xharbour também tem um hbclass.ch
\xharbour\bin\harbour *.prg -i..\include;\xharbour\include

Converter pra xHabour

Enviado: 27 Jul 2017 23:15
por JoséQuintas
agora tem o hbzebra.ch e harupdf.ch.
harupdf pra PDF, e zebra pra código de barras

xHarbour não tem estes?

Converter pra xHabour

Enviado: 27 Jul 2017 23:20
por JoséQuintas
Xi... este interessante o xHarbour não tem.

Código: Selecionar todos

FUNCTION nomevelho( ... ); RETURN nomenovo( ... )
tentei isto mas não aceita

Código: Selecionar todos

   #xtranslate ( \.\.\. )                            => ( a, b, c, d, e, f, g, i, i, j, k, l, m, n )

Converter pra xHabour

Enviado: 27 Jul 2017 23:44
por JoséQuintas
Só aproveitando pra mostrar o recurso do GIT ( não confundir com GITHUB)
classe.png
No momento tenho arquivos alterados pra xHarbour, e vou anular tudo.
Mas tenho alterações que preciso salvar, que não posso perder.

Então... salvo o que me interessa, e depois digito o comando GIT reset --hard HEAD
Pronto. Todo restante vai voltar o que estava antes, menos o que salvei primeiro.

Sem backups, sem trabalho extra, pelo próprio GIT dá pra confirmar cada alteração que foi feita, pra ver se interessa ou não manter.

Converter pra xHabour

Enviado: 27 Jul 2017 23:50
por JoséQuintas
aqui por exemplo, mostrando que a alteração foi só acrescentar uma linha de #include.
classe2.png
Isso é LOCAL, é na máquina, não tem nada a ver com existir ou não cópia na internet.

GIT acaba servindo pra backup, pra conferência, pra desfazer coisas que não interessam, etc.

É um verdadeiro controle de fontes.
E é um ótimo "ajudante".

O que eu alterei ontem? Não lembro, não faço a menor idéia, mas se acessar o GIT, digo tudo que foi alterado....tim tim por tim tim ... rs

Se você esquecer... falam que você já está caducando.... mas se mostrar o controle do GIT, vão falar que você é super !!!!

Então.... seja super ao invés de caduco.... rs

Converter pra xHabour

Enviado: 28 Jul 2017 09:37
por HASA
:))
Bom dia, José eu usava essas libs com xHarbour 1.2.3 Intl. (SimpLex) (Build 20140813).
:)Pos
HASA

Converter pra xHabour

Enviado: 28 Jul 2017 11:51
por jairfab
Nossa isto é muito legal, eu queria fazer uma conversão desta era de hwgui para fivewin, alguém tem interesse em iniciar um projeto deste, eu gostaria de fazer mas não tenho conhecimento para tanto, se alguém for capaz de fazer!

Eu vi que no projeto qt eles fizeram para minigui, hwgui!

Converter pra xHabour

Enviado: 28 Jul 2017 13:45
por JoséQuintas
Eu também não tenho prática com isso de #xcommand e #xtranslate.
Acho que é começar e ir vendo o que acontece, e pegar alguns exemplos que devem existir nos CHs existentes.
Só que pra isso, precisaria entender como funciona cada comando em cada biblioteca/compilador.

Entre Harbour e xHarbour as diferenças não são tantas como nas bibliotecas gráficas.