Hwgui 2.22 build 2
Moderador: Moderadores
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Alexandre,
#include hwgui.ch, mescla as duas includes declaradas...
#include hwgui.ch, mescla as duas includes declaradas...
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Hwgui 2.22 build 2
Ola!
Eu mesmo demorei aqui para achar.
Tem que contar como achar o erro, abrir o browse array e teclar a seta para esquerda 3 vezes.
Saudações,
Itamar M. Lins Jr.
Eu mesmo demorei aqui para achar.
Tem que contar como achar o erro, abrir o browse array e teclar a seta para esquerda 3 vezes.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
Fernando queiroz
- Usuário Nível 4

- Mensagens: 779
- Registrado em: 13 Nov 2014 00:41
- Localização: Porto Alegre/RS
Hwgui 2.22 build 2
Itamar M. Lins Jr. escreveu:Ola!
Sobre o problema do Designer não trabalhar com PRG.
Resposta do Kresin:Yes, it is. I didn't updated export to prg for a long time and don't know now, when will be able to do this. So, I recommend to use xml format only. If there are real reasons to use prg, we may consider them and try to find a suitable decision with xml.Saudações,Sim. Eu não atualizei a exportação para prg por um longo tempo e não sei agora, quando será capaz de fazer isso. Por isso, recomendo usar somente o formato xml. Se houver razões reais para usar o prg, podemos considerá-las e tentar encontrar uma decisão adequada com xml.
Itamar M. Lins Jr.
Itamar eu fiz alguns teste com a tela em XML e estou achando muito interessante, acho que vale a pena continuar por esse caminho,
vi que pode colocar ate código dentro do XML e não precisa recompilar, so mandar uma nova tela e funciona, ate mesmo o app sendo executado, só entrar na rotina novamente e carregar a tela nova.
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Itamar,
O duro e se expressar em português, traduzir pra inglês e ele do inglês pro russo, imagina a salada... kkkkk
O duro e se expressar em português, traduzir pra inglês e ele do inglês pro russo, imagina a salada... kkkkk
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Amigos,
Um dos erros corrigido, só falta o FILTER.../*
* $Id: Changelog 2760 2018-12-26 08:32:46Z alkresin $
*/
/* Use this format for the entry headers:
YYYY-MM-DD HH:MM UTC[-|+]hhmm Your Full Name <your_email@address>
For example:
2002-12-01 23:12 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/
2018-12-26 11:32 UTC+0300 Alexander Kresin <alex@belacy.ru>
* source/winapi/hbrowse.prg
! Fixed drawing for the case if :lAdjRight is set to .f.
2018-12-25 15:36 UTC+0300 Alexander Kresin <alex@belacy.ru>
* source/winapi/draw.c
! Small fix.
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Hwgui 2.22 build 2
Ola!
O DBF de remédio ? Faz bem pequeno, igual ao colrblock.prg só olhar lá como foi feito.
Itamar M. Lins Jr.
Ele pediu que vc faça um exemplo demonstrando o erro. E que ele possa executar. Da forma como está ele não conseguiu ver o problema.Um dos erros corrigido, só falta o FILTER...
O DBF de remédio ? Faz bem pequeno, igual ao colrblock.prg só olhar lá como foi feito.
E ele fala sobre os exemplos... bem eu disse quase a mesma coisa.I've read the source, posted by Gilberto, and the whole thread at the forum, but his code includes call of functions, which are not published, it opens databases, which I haven't. What can I do with this?
I need a self-contained sample with data to reproduce the problem. The datafiles may contain a minimum of records - just to see what happens. It is better to remove code, call of functions, which doesn't relate to the problem.
Then, Gilberto writes that there aren't samples enough in HwGUI. Yes, this is true. But in could be more helpful, if he and other guys suggested concrete issues, which need to be included in samples, in tutorial, which are not clear enough.
Regards, Alexander.
Saudações,Tradução do google.
Então, Gilberto escreve que não há exemplos suficientes em HwGUI. Sim isso é verdade. Mas poderia ser mais útil, se ele e outros caras sugerissem problemas concretos, que precisam ser incluídos nos exemplos, no tutorial, que não estão suficientemente claros.
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Itamar,
Fiz este rotina para simular o erro, baseado no BROWSEFILTER, que esta na pasta SAMPLES da 2.17, se voce quiser testar para ver se não e um erro meu, e so pegar os dois arquivos DBF que estão la.
Fiz umas pequenas alterações, e acrescentei a função SOMA(),para poder demonstrar o erro, que a meu ver esta no ON UPDATE, pois se você tirar o ON UPDATE, ele funciona normalmente.
O erro ocorre, se você vai ate a segunda linha do segundo browse e altera a qtde, se voce teclar a seta para baixa, vai ver que ele tras as informações do item anterior.
Outro detalhe, se voce fiz isso na primeira linha do segundo browse, não ocorre o erro.
Me desculpe se não soube me explicar, mais creio que se você compilar vai achar o erro.
Como te disse, não sei se e um erro meu, devido aos meus poucos conhecimento, mais este erro ocorre, por que quero atualizar o valor "FOOTING", que uso na minha rotina em 2.17
Fiz este rotina para simular o erro, baseado no BROWSEFILTER, que esta na pasta SAMPLES da 2.17, se voce quiser testar para ver se não e um erro meu, e so pegar os dois arquivos DBF que estão la.
Código: Selecionar todos
/*
Copyright (c) Luiz Henrique lh.santos at ibest.com.br
*/
#include "hwgui.ch"
#INCLUDE "ORD.CH"
STATIC nLastRecordFilter := 0
STATIC nFirstRecordFilter := 0
FUNCTION Main()
PRIVATE frmTesteBrowse, xVLR:=0
INIT WINDOW frmTesteBrowse MAIN TITLE "Teste HBrowse com filtro" ;
COLOR COLOR_3DLIGHT+1 ;
AT 0,0 ;
SIZE hwg_Getdesktopwidth(), hwg_Getdesktopheight() - 28 ;
FONT HFont():Add("MS Sans Serif", 0, -12)
USE MESAS NEW SHARED
INDEX ON mesa TO indmesas
SET INDEX TO indmesas
USE ITENS NEW SHARED
INDEX ON mesa TO inditens
SET INDEX TO inditens
DBSELECTAREA("MESAS")
@ 010,061 BROWSE DATABASE brwMesas ;
SIZE 353,283 ;
STYLE WS_VSCROLL + WS_HSCROLL ;
ON POSCHANGE {|| EVAL(brwItens:bFirst), brwItens:Refresh()}
brwMesas:bColorSel := 16711680 //Cor da linha do browse
ADD COLUMN FIELDBLOCK("mesa") TO brwMesas ;
HEADER "Mesa";
TYPE "C" LENGTH 6 DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("garcon") TO brwMesas ;
HEADER "Garcom" ;
TYPE "C" LENGTH 3 DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("total") TO brwMesas ;
HEADER "Total" ;
TYPE "N" LENGTH 10 DEC 2 ;
PICTURE "@E 999,999.99" ;
JUSTIFY HEAD DT_RIGHT ;
JUSTIFY LINE DT_RIGHT
brwMesas:Refresh()
DBSELECTAREA("ITENS")
@ 375,061 BROWSE brwItens FILTER AUTOEDIT ;
SIZE 415,283 ;
STYLE WS_VSCROLL + WS_HSCROLL ;
ON UPDATE {|| SOMA(xVLR) } ;
FIRST {|| DBSEEK(mesas->mesa)} ;
WHILE {|| mesa == mesas->mesa}
brwItens:bColorSel := 16711680
ADD COLUMN FIELDBLOCK("mesa") TO brwItens ;
HEADER "Mesa";
TYPE "C" LENGTH 6 DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("estornado") TO brwItens ;
HEADER "Estornado";
TYPE "C" LENGTH 1 DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("nomeprod") TO brwItens ;
HEADER "Produto" ;
TYPE "C" ;
LENGTH 40 ;
DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("qtd") TO brwItens ;
HEADER "Quantidade";
TYPE "N" LENGTH 10 DEC 3 ;
JUSTIFY HEAD DT_RIGHT ;
JUSTIFY LINE DT_RIGHT ;
EDITABLE
BRWITENS:acolumns[04]:footing := TRANSF( xVLR, [@E 999,999] )
brwItens:Refresh()
ACTIVATE WINDOW frmTesteBrowse
RETURN NIL
FUNCTION SOMA()
xVLR:=0
IF BRWITENS:nRecords > 0
ITENS->(DBGOTOP())
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
DO WHILE !EOF()
xVLR += ITENS->QTD
ITENS->(DBSKIP())
ENDDO
BRWITENS:acolumns[04]:footing := TRANSF( xVLR, [@E 999,999] )
ITENS->(OrdScope( TOPSCOPE , NIL ))
ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
ENDIF
BRWITENS:Refresh()
RETURN NIL
O erro ocorre, se você vai ate a segunda linha do segundo browse e altera a qtde, se voce teclar a seta para baixa, vai ver que ele tras as informações do item anterior.
Outro detalhe, se voce fiz isso na primeira linha do segundo browse, não ocorre o erro.
Me desculpe se não soube me explicar, mais creio que se você compilar vai achar o erro.
Como te disse, não sei se e um erro meu, devido aos meus poucos conhecimento, mais este erro ocorre, por que quero atualizar o valor "FOOTING", que uso na minha rotina em 2.17
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
-
Fernando queiroz
- Usuário Nível 4

- Mensagens: 779
- Registrado em: 13 Nov 2014 00:41
- Localização: Porto Alegre/RS
Hwgui 2.22 build 2
AMIGO verificando seu fonte techo quase certeza que o problema esta em:
ITENS->(DBGOTOP())
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
tente assim
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
ITENS->(DBGOTOP())
explicação:
depois de fazer o filtro é que você tem de ir para o começo do filtro
)
)
)
ITENS->(DBGOTOP())
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
tente assim
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
ITENS->(DBGOTOP())
explicação:
depois de fazer o filtro é que você tem de ir para o começo do filtro
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
Hwgui 2.22 build 2
O problema está no uso DBGOTOP que tem que estar após o OrdScope para funcionar.
Apó o Nil tem que fazer o DBGOTOP
Apó o Nil tem que fazer o DBGOTOP
Código: Selecionar todos
FUNCTION SOMA()
xVLR:=0
IF BRWITENS:nRecords > 0
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
ITENS->(DBGOTOP())
DO WHILE !EOF()
xVLR += ITENS->QTD
ITENS->(DBSKIP())
ENDDO
BRWITENS:acolumns[04]:footing := TRANSF( xVLR, [@E 999,999] )
ITENS->(OrdScope( TOPSCOPE , NIL ))
ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
ITENS->(DBGOTOP())
ENDIF
BRWITENS:Refresh()
RETURN NIL
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Simões,
Eu coloquei a carroça na frente dos cavalos... e que fiz na correria o exemplo em nem me atentei ao erro.
O problema esta no refresh do UPDATE, deve ser algo bem pequeno mesmo.
Olha a imagem com a correção do dbgotop(), continua da mesma maneira.
Eu coloquei a carroça na frente dos cavalos... e que fiz na correria o exemplo em nem me atentei ao erro.
O problema esta no refresh do UPDATE, deve ser algo bem pequeno mesmo.
Olha a imagem com a correção do dbgotop(), continua da mesma maneira.
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
-
Fernando queiroz
- Usuário Nível 4

- Mensagens: 779
- Registrado em: 13 Nov 2014 00:41
- Localização: Porto Alegre/RS
Hwgui 2.22 build 2
gilbertosilverio escreveu:Ola Simões,
Eu coloquei a carroça na frente dos cavalos... e que fiz na correria o exemplo em nem me atentei ao erro.
O problema esta no refresh do UPDATE, deve ser algo bem pequeno mesmo.
Olha a imagem com a correção do dbgotop(), continua da mesma maneira.
FUNCTION SOMA()
xVLR:=0
IF BRWITENS:nRecords > 0
ITENS->(OrdScope( TOPSCOPE , NIL ))
ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
ITENS->(DBGOTOP())
ITENS->(OrdScope( TOPSCOPE , mesas->mesa ))
ITENS->(OrdScope( BOTTOMSCOPE, mesas->mesa ))
ITENS->(DBGOTOP())
DO WHILE !EOF()
xVLR += ITENS->QTD
ITENS->(DBSKIP())
ENDDO
BRWITENS:acolumns[04]:footing := TRANSF( xVLR, [@E 999,999] )
ENDIF
ITENS->(DBGOTOP())
BRWITENS:Refresh()
RETURN NIL
HARBOUR 3.2, HWGUI 2.23 B3, SEFAZCLASS, PDFClass, ADO + MariaDB/MySQL, RMChart
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Hwgui 2.22 build 2
Ola!
Resposta do bug no filtro.
Saudações,
Itamar M. Lins Jr.
Resposta do bug no filtro.
Procura aê, o BO.I've rewrite his code to use my dbf files and to remove all function calls and all excess stuff - and it works correctly. Probably, the problem is somewhere in his code.
Regards, Alexander.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Itamar,
Se ele, o mestre, não achou o erro, quem sou eu pra achar, um semi analfabeto... kkkkkk
Deixa quieto, vamos ficar na 2.17 mesmo...
Se ele, o mestre, não achou o erro, quem sou eu pra achar, um semi analfabeto... kkkkkk
Deixa quieto, vamos ficar na 2.17 mesmo...
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Hwgui 2.22 build 2
Ola!
Eu tenho essas rotinas.
Tô sem tempo agora, depois eu passo. E funciona em qualquer versão.
Não pode ligar e desligar o ordscope nos filhos, deve ficar ligado o tempo todo.
Ai é só usar gotop, do while...
Não uso esse código abaixo:
Na NFE de entradas tem 4 ou cinco filhos da mesma forma.
Saudações,
Itamar M. Lins Jr.
Eu tenho essas rotinas.
Tô sem tempo agora, depois eu passo. E funciona em qualquer versão.
Não pode ligar e desligar o ordscope nos filhos, deve ficar ligado o tempo todo.
Código: Selecionar todos
..
@ 5,080 Browse oBrw DataBase of oDlg Size 500,450 Font oFtBr Style WS_VSCROLL + WS_HSCROLL ;
ON POSCHANGE {||UpGetBrw(oBrwItens,oBrwMP)}
..
***********************************
FUNCTION UpGetBrw(oBrwItens,oBrwMP)
***********************************
*
*
mo->(ordSetFocus(1)) //ticket
mo->(OrdScope(0,cm->ticket))
mo->(OrdScope(1,cm->ticket))
mo->(dbGoTop())
oBrwItens:Refresh()
mp->(OrdScope(0,cm->ticket))
mp->(OrdScope(1,cm->ticket))
mp->(DbGoTop())
oBrwMP:Refresh()
RETURN .T.
Não uso esse código abaixo:
Código: Selecionar todos
FIRST {|| DBSEEK(mesas->mesa)} ;
WHILE {|| mesa == mesas->mesa}
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
-
gilbertosilverio
- Usuário Nível 3

- Mensagens: 339
- Registrado em: 18 Jan 2009 10:39
- Localização: Ribeirao Pires - SP
Hwgui 2.22 build 2
Ola Itamar,
Para funcionar somente desta maneira...
Como preciso atualizar as quantidades e totalizar no "FOOTING", só retirando FIRST E WHILE do browse FILTER.
Da maneira que estava, pelo que consegui ver, se você alterar a primeira lida do segundo Browse, ele fica certo, mais a partir da 2ª linha, ele considera que você esta na primeira linha e traz o ultimo item do arquivo junto ao filtro do item que você pesquisou.
Existe um erro no refresh do update do filter, mais quem sou eu para falar onde esta...
Desta maneira, que fiz, creio que por ele dar um refresh(), no 1º Browse, ele deve corrigir também o segundo, o único inconveniente, e que ele se reposiciona no 1º item do Browse, e tenho certeza que o meu pessoal vai chiar...
São por estas pequenas coisa, que o pessoal fica com a versão antiga, não existe compatibilidade entre elas, ai fica dificil migrar para a nova...
Para funcionar somente desta maneira...
Como preciso atualizar as quantidades e totalizar no "FOOTING", só retirando FIRST E WHILE do browse FILTER.
Da maneira que estava, pelo que consegui ver, se você alterar a primeira lida do segundo Browse, ele fica certo, mais a partir da 2ª linha, ele considera que você esta na primeira linha e traz o ultimo item do arquivo junto ao filtro do item que você pesquisou.
Existe um erro no refresh do update do filter, mais quem sou eu para falar onde esta...
Desta maneira, que fiz, creio que por ele dar um refresh(), no 1º Browse, ele deve corrigir também o segundo, o único inconveniente, e que ele se reposiciona no 1º item do Browse, e tenho certeza que o meu pessoal vai chiar...
São por estas pequenas coisa, que o pessoal fica com a versão antiga, não existe compatibilidade entre elas, ai fica dificil migrar para a nova...
Código: Selecionar todos
#include "hwgui.ch"
#include "ORD.ch"
FUNCTION Main()
PRIVATE frmTesteBrowse
INIT WINDOW frmTesteBrowse MAIN TITLE "Teste HBrowse com filtro" ;
AT 0,0 ;
SIZE 820, 420 ;
FONT HFont():Add("TAHOMA", 0, -14)
CLOSE DATA
USE MESAS NEW SHARED
INDEX ON mesa TO indmesas
SET INDEX TO indmesas
USE ITENS NEW SHARED
INDEX ON mesa TO inditens
SET INDEX TO inditens
DBSELECTAREA("MESAS")
@ 010,061 BROWSE DATABASE brwMesas SIZE 353,283 STYLE WS_VSCROLL+WS_HSCROLL ;
ON POSCHANGE {|| UpGetBrw( @brwMesas, @brwItens)}
brwMesas:bColorSel := 16711680 //Cor da linha do browse
ADD COLUMN FIELDBLOCK("mesa") TO brwMesas ;
HEADER "Mesa " ;
TYPE "C" LENGTH 6 DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("garcon") TO brwMesas ;
HEADER "Garcom" ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("total") TO brwMesas ;
HEADER "Total" ;
PICTURE "@E 999,999.99" ;
JUSTIFY HEAD DT_RIGHT ;
JUSTIFY LINE DT_RIGHT
brwMesas:Refresh()
DBSELECTAREA("ITENS")
@ 375,061 BROWSE brwItens FILTER AUTOEDIT SIZE 415,283 STYLE WS_VSCROLL+WS_HSCROLL ;
ON UPDATE {|| UpGetBrw( @brwMesas, @brwItens)}
brwItens:bColorSel := 16711680
ADD COLUMN FIELDBLOCK("mesa") TO brwItens ;
HEADER "Mesa ";
TYPE "C" LENGTH 6 DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("nomeprod") TO brwItens ;
HEADER "Produto" ;
TYPE "C" ;
LENGTH 40 ;
DEC 0 ;
JUSTIFY HEAD DT_LEFT ;
JUSTIFY LINE DT_LEFT
ADD COLUMN FIELDBLOCK("qtd") TO brwItens ;
HEADER "Quantidade" ;
PICTURE "@R 999999" ;
EDITABLE ;
JUSTIFY HEAD DT_RIGHT ;
JUSTIFY LINE DT_RIGHT
brwItens:Refresh()
ACTIVATE WINDOW frmTesteBrowse
RETURN NIL
* * * * * * * * *
FUNCTION UpGetBrw(oBrw1, oBrw2)
fVLR01:=0
ITENS->(OrdScope( TOPSCOPE , NIL ))
ITENS->(OrdScope( BOTTOMSCOPE, NIL ))
ITENS->(DBGOTOP())
ITENS->(OrdScope( TOPSCOPE , MESAS->MESA ))
ITENS->(OrdScope( BOTTOMSCOPE, MESAS->MESA ))
ITENS->(DBGOTOP())
DO WHILE !EOF()
fVLR01 += ITENS->QTD
ITENS->(DBSKIP())
ENDDO
oBrw2:acolumns[02]:footing := [Qtde Total: ]
oBrw2:acolumns[03]:footing := TRANSF( fVLR01, [@E 999,999] )
oBrw2:Refresh()
RETURN .T.
GilbertoSilverio
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
gilbertosilverio@gmail.com
gilbertosilverio2003@yahoo.com.br
