Melhor combinação Visual Lib 2.3 e xHarbour

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Melhor combinação Visual Lib 2.3 e xHarbour

Mensagem por sygecom »

Buenas....se alguem poder me dizer qual a melhor versão do xharbour para migrar com a visual lib...fico agradecido...se poderem tb. dar algumas dicas ! tudo é bem vindo.

Obs: Jah estou compilando com a versão xHarbour build 0.99.50 Intl. (SimpLex) em janela tudo bonitinho. soh me deu alguns problema com o Tbrowse q ainda não sei o que é ! e quando entro em algum dbedit() ele custa a abrir a tabela.....

Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

Explica melhor o que é "ele custa a abrir a tabela" por favor.
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Primeiramente quero lhe agradecer pelo belo trabalho com a visual lib 2.3 Vailton....desculpa achei o problema é que uso as teclas de atalho com F1,F2 e uso tb o ENTER ai deu problema no ENTER...mas isso eu resolvo apesar que são bastante dbedit()....mas meu problema mesmo esta no tbrowse quando ele chega no stabilize() dah um erro e cai...sabe como posso resolver ? vou postar um exemplo de como faço:


Código: Selecionar todos

***********
FUNC TBROSE
***********
FIELD CODPRO,SUBCOD,PRODUTO,BRUTO,DESCONTO,LIQUIDO IN ENTRADA
LOCAL nButton := 1
LOCAL nOpcao  := 0
LOCAL OTbr  :=TBrowseDB( 06, 01, 15, 78 )
LOCAL OTbc1 :=TbColumnNew("N§Pro",                  { || CODPRO   } )
LOCAL OTbc2 :=TbColumnNew("T",                      { || SUBCOD   } )
LOCAL OTbc3 :=TbColumnNew("Descricao Produto",      { || PRODUTO  } )
LOCAL OTbc4 :=TbColumnNew("Peso Bru",               { || BRUTO    } )
LOCAL OTbc5 :=TbColumnNew("Desc.Kg",                { || DESCONTO } )
LOCAL OTbc6 :=TbColumnNew("Peso Liq",               { || LIQUIDO  } )

LOCAL nKey
LOCAL lExitRequested
********************************************************************
                //   1   2    3     4     5     6    7     8     9
oTbr:colorspec :="N*/W,N*/W, W+/B, R+*/N, N/R+, B/W, W/B, R/W*, B/W*"
oTbr:addColumn(oTbc1)
oTbr:addColumn(oTbc2)
oTbr:addColumn(oTbc3)
oTbr:addColumn(oTbc4)
oTbr:addColumn(oTbc5)
oTbr:addColumn(oTbc6)

************ Definicao de Cores ***********
oTbC5:COLORBLOCK :={| DESCONTO | IIF ( DESCONTO > 0 , { 9,9} , { 1,1} ) }
************ largura das colunas ***********
oTbc3:width:=20
************ largura das colunas ***********
************ Marcara das colunas ***********
oTbc1:picture:="!!!!!"
oTbc4:picture:="@E 99,999.9"
oTbc5:picture:="@E 9,999.9"
oTbc6:picture:="@E 99,999.99"
********************************************

************ Linhas das colunas ************
oTbr:COLSEP :=DEF_CSEP  // desenha colunas Verticais
oTbr:HEADSEP:=HEAD_SEP  // desenha colunas Horizontais superior
oTbr:FOOTSEP:=FOOT_SEP  // desenha colunas Horizontais inferior
*********************

************ COLUNAS A CONGELAR ************
ColFix := 3              // atraves de variaval colfix
oTbr:freeze := ColFix
********************************************

aTABELA := savenv( 01, 00, 24, 79 )
CLEAR TYPEAHEAD         // limpa sujeira no teclado
SAGEM(01,00,'LANCAMENTO DE PRODUTOS NO BOLETO',1)

SETCOLOR( "N+/W,N*/W, , , N*/W" )
SETCURSOR( 1 )
SETCOLOR( "N*/W,W+/BG" )

SELE ENTRADA
ORDScope(0, XNFISCAL)
ORDScope(1, XNFISCAL)
go top

*nSaveRec := Recno()  // NÇO FUNCIONO NO XHARBOUR 09950
*oTbr:RefreshAll()    // NÇO FUNCIONO NO XHARBOUR 09950
*oTbr:ForceStable()   // NÇO FUNCIONO NO XHARBOUR 09950

sum  all bruto to bru
@ 16,36 say bru pict "@E 99,999.9"

Otbr:gotop()  // no arquivo indexado

IExitRequested := .F.
DO WHILE !IExitRequested
   DO WHILE !oTbr:stabilize()   //ELE CAI BEM AQUI
   ENDDO
   nKey := inkey(0)

   IF nKey == K_C .OR. nKey == K_c
      DO WHILE .T.
         CADBOL("C")  // FUNۂO BLA,BLA,BLA
         SELE ENTRADA
         SET ORDER TO 1
         ORDScope(0, XNFISCAL)
         ORDScope(1, XNFISCAL)

         nSaveRec := Recno()
         oTbr:RefreshAll()
         oTbr:ForceStable()

         sum  all bruto to bru
         @ 16,36 say bru pict "@E 99,999.9"

         dbgotop()     // arruma por ordem os dados
         Otbr:gotop()  // no arquivo indexado
         IF vVOLTAR="S"
            LOOP
         ELSE
            EXIT
         ENDIF
      ENDDO
   ELSEIF nKey == K_F .OR. nKey == K_f
      IExitRequested := .T.
   ELSEIF nKey == K_A .OR. nKey == K_a
      vREG=RECNO()

      CADBOL("A")        // FUNۂO BLA,BLA,BLA
      SELE ENTRADA
      SET ORDER TO 1
      ORDScope(0, XNFISCAL)
      ORDScope(1, XNFISCAL)

      nSaveRec := Recno()
      oTbr:RefreshAll()
      oTbr:ForceStable()

      sum  all bruto to bru
      @ 16,36 say bru pict "@E 99,999.9"

      dbgotop()     // arruma por ordem os dados
      Otbr:gotop()  // no arquivo indexado
   ELSEIF nKey == K_DEL
      vREG=RECNO()
      DELCADBOL()        // FUNۂO BLA,BLA,BLA
      SELE ENTRADA
      SET ORDER TO 1
      ORDScope(0, XNFISCAL)
      ORDScope(1, XNFISCAL)

      nSaveRec := Recno()
      oTbr:RefreshAll()
      oTbr:ForceStable()

      sum  all bruto to bru
      @ 16,36 say bru pict "@E 99,999.9"

      dbgotop()     // arruma por ordem os dados
      Otbr:gotop()  // no arquivo indexado
   ELSEIF nKey == F_5
      ATUALIZA()         // FUNۂO BLA,BLA,BLA

      OBRIGA3()          // FUNۂO BLA,BLA,BLA
      SELE ENTRADA
      SET ORDER TO 1
      ORDScope(0, XNFISCAL)
      ORDScope(1, XNFISCAL)

      nSaveRec := Recno()
      oTbr:RefreshAll()
      oTbr:ForceStable()

      sum  all bruto to bru
      @ 16,36 say bru pict "@E 99,999.9"

      dbgotop()     // arruma por ordem os dados
      Otbr:gotop()  // no arquivo indexado

   ELSEIF nKey == K_DOWN
      oTbr:down()
   ELSEIF nKey == K_UP
      oTbr:up()
   ELSEIF nKey == K_PGDN
      oTbr:pageDown()
   ELSEIF nKey == K_PGUP
      oTbr:pageUp()
   ELSEIF nKey == K_CTRL_PGUP
      oTbr:goTop()
   ELSEIF nKey == K_CTRL_PGDN
      oTbr:goBottom()
   ELSEIF nKey == K_RIGHT
      oTbr:right()
   ELSEIF nKey == K_LEFT
      oTbr:left()
   ELSEIF nKey == K_HOME
      oTbr:home()
   ELSEIF nKey == K_END
      oTbr:end()
   ELSEIF nKey == K_CTRL_LEFT
      oTbr:panLeft()
   ELSEIF nKey == K_CTRL_RIGHT
      oTbr:panRight()
   ELSEIF nKey == K_CTRL_HOME
      oTbr:panHome()
   ELSEIF nKey == K_CTRL_END
      oTbr:panEnd()
   ENDIF
ENDDO
RETURN NIL
Desde Já Agradeço...
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

Alguma msg de erro?
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Sim.....desculpa falha minha não ter postado !! outra coisa estou usando a Visual Lib 2.3 + xHarbur 09950 + wvtgui....Abaixo o post do erro:

Código: Selecionar todos

++++++++++++++++++++ Internal Error Handling Information  +++++++++++++++++++++

Subsystem Call ..: BASE
System Code .....: 1075
Default Status ..: False
Description .....: Argument error
Operation .......: >
Arguments .......:  [ 1] = Type: C Val:         [ 2] = Type: N Val:          0
Involved File ...: 
Dos Error Code ..: 0

 Trace Through:
----------------
(b)PLABOLETO          :     586 in Module: BAL.PRG
TBROWSE:DRAWAROW      :   2,206 in Module: tbrowse.prg
TBROWSE:PERFORMSTABIL :   1,909 in Module: tbrowse.prg
TBROWSE:STABILIZE     :   1,815 in Module: tbrowse.prg
PLABOLETO             :     651 in Module: BAL.PRG
PESAGEM               :     484 in Module: BAL.PRG
(b)MENU               :     321 in Module: MENUS.PRG
DWNEXECUTE            :   1,246 in Module: 
DOWNMENU              :     998 in Module: vlib.prg
BAREXECUTE            :     745 in Module: 
BARMENU               :     591 in Module: vlib.prg
MENU                  :   1,028 in Module: MENUS.PRG
MAIN                  :     225 in Module: SAGI.PRG


############################## Video Screen Dump ##############################

+--------------------------------------------------------------------------------+
| N§Pro   T   Descricao Produto      Peso Bru   Desc.Kg   Peso Liq    Vl Preco   |
| ÄÄÄÄÄÄÂÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄ |
|       ³   ³                      ³      0,0 ³     0,0 ³      0,00 ³      0,00  |
|       ³   ³                      ³          ³                                  |
|       ³   ³                      ³          ³                                  |
|       ³   ³                      ³          ³                                  |
|       ³   ³                      ³          ³                                  |
|       ³   ³                      ³          ³                                  |
|       ³   ³                      ³          ³                                  |
|Error BASE/1075  Argument error: > Arguments: ( [ 1] = Type: C Val:         [ 2]|
| = Type: N Val:          0)o Total->     0,0ÄÄÄ¿ÚÄ Resultado da Compra ÄÄÄÄÄÄÄÄ¿|
|³                                              ³³ N§ Total Produtos:           ³|
|Error at ...: (b)PLABOLETO(586) in Module: BAL.PRGPeso Liquido.....:           ³|
|Called from : TBROWSE:DRAWAROW(2206) in Module: tbrowse.prg.......R$           ³|
|Called from : TBROWSE:PERFORMSTABILIZATION(1909) in Module: tbrowse.prg        ³|
|Called from : TBROWSE:STABILIZE(1815) in Module: tbrowse.prgL ....R$           ³|
|Called from : PLABOLETO(651) in Module: BAL.PRGÙÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ|
|Called from : PESAGEM(484) in Module: BAL.PRGrtador                             |
|Called from : (b)MENU(321) in Module: MENUS.PRGinta-feira       9Calcula0Sa¡da  |
|Called from : DWNEXECUTE(1246) in Module:                                       |
|Called from : DOWNMENU(998) in Module: vlib.prg                                 |
|Called from : BAREXECUTE(745) in Module:                                        |
|Called from : BARMENU(591) in Module: vlib.prg                                  |
|Called from : MENU(1028) in Module: MENUS.PRG                                   |
|Called from : MAIN(225) in Module: SAGI.PRG                                     |
+--------------------------------------------------------------------------------+


Desde ja agradeço sua Atenção

Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

Oq tem nesta linha:
(b)PLABOLETO : 586 in Module: BAL.PRG
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Abaixo o que esta nah linha indicada....são referencias para mudar a COR.

Código: Selecionar todos

oTbC5:COLORBLOCK :={| DESCONTO | IIF ( DESCONTO > 0 , { 9,9} , { 1,1} ) }
Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Tche, se eu tirar elas ele vai tranquilo !!! mas como mudo as cor no tbrowse ?
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

Qual o nome do campo q vc quer testar? Se for desconto teste:

Código: Selecionar todos

oTbC5:COLORBLOCK :={|| IIF ( DESCONTO > 0 , { 9,9} , { 1,1} ) } 
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Testado e Aprovado....tenho bastante serviço pela frente......vlw...muito obrigado...aproveitando o post vc sabe alguma coisa de comunicação da porta serial para xharbour ? tens algum exemplo ??

Muito Obrigado !!


Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

Rapaz nesta questão não...
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Ok....mesmo assim agradeço muito....no que eu poder ser util prende o grito..

Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Tche, Aproveitando Topico...como faço pra rodar em TELA CHEIA na VISUAL LIB 2.3 ??

Desculpa alguma coisa...mas sou iniciante com varias duvidas....

Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Mensagem por vailton »

Tem 1 funcao que o pessoal usa para testar a resolucao atual do monitor e deste modo setar o tamanho correto da fonte, dando a impressao de se estar em tela cheia...

Eu já a vi várias vezes, mas num sei onde ela está aqui no HD...
rsrsrs (nao ajudou muito,né?...)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Grande Vailton, vc simplesmente disponibilizar a visual lib 2.3 jah ajudou até de mais........mas toh conseguindo compilar com xharbour 09950 com o codigo abaixo:

Código: Selecionar todos

FUNC MAIN()

REQUEST DBFCDX
RDDSETDEFAULT("DBFCDX")
DBSETDRIVER("DBFCDX")

#include "inkey.ch"
#include "visual2.ch"
#include "GTINFO.ch"

REQUEST WVT_SETCODEPAGE
WVT_SETTITLE(HB_OEMTOANSI("Sistema de Agendamento de Consultas"))
WVT_SETICON(2)

WVT_SETCODEPAGE(255)
SET EVENTMASK TO 159
do case  // Identifica a resolucao do video
   case gtinfo(GTI_DESKTOPWIDTH) > 1023
       gtinfo(GTI_FONTWIDTH, 12) // 12 anterior   //   13  //   12
       gtinfo(GTI_FONTSIZE, 27)  // 28 anterior   //   29  //   27
   case gtinfo(GTI_DESKTOPWIDTH) > 799
        gtinfo(GTI_FONTWIDTH, 10 ) // 10 anterior  //   10
        gtinfo(GTI_FONTSIZE, 22 )  // 20 anterior  //   22
   otherwise
        gtinfo(GTI_FONTWIDTH, 8)
        gtinfo(GTI_FONTSIZE, 17)
endcase

SET CENTURY ON
SET BELL OFF
SET DATE BRITISH
SET EPOCH TO 2000
SET CONFIRM ON
SET DELETED ON
SET EXACT ON
SET SCOREBOARD OFF
SET WRAP ON
SET EXCLUSIVE OFF
set(_SET_DBFLOCKSCHEME,2)
Estou dando passo a passo...e estou com os seguintes problema abaixo:
1- como faço para usar o comando DrawFn( 02, "Busca" ) ?
2- como uso a tabela ASCII para visuais na tela como por exemplo CHR(24) ?


Obrigado pela Atenção

Abraços
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder