Página 1 de 1
Tela de vendas com bowse e itens da venda tb aparecendo
Enviado: 15 Fev 2007 19:04
por Ricardo Sales Ribeiro
Olá Amigos!
Esou precisando de uma ajuda de vcs, preciso criar um programa de vendas, onde apareça na tela os dados da venda, e um browse com os itens da venda, podendo alternar entre os dados da venda e os itens.
Como tb incluir e excluir itens, antes de fechar a venda, depois de fechar pedir a forma de pagamento.
Desde já obrigado pela ajuda.
Um grande abraço
Enviado: 15 Fev 2007 21:38
por rochinha
Amiguinho
Com o Miro 2.0 voce poderia fazer umas telas em DOS com o recurso de paginação que consiste de ao teclar PAGE-UP e PAGE-DOWN pular de uma pagina para a outra, sendo que cada pagina teria seus comandos especificos, tipo a primeira conteria GETs dos dados do pedido, a segunda um browse para inputar seus itens e uma terceira com dados finalizadores.
Fica pratico, mas fica um abre tela e tudo mais.
Descole o Miro e verifique como isto funciona. Eu usei a muito tempo atrás e não tenho o codigo onde usava esta caracteristica. Algo parecido com isto:
Código: Selecionar todos
FUNCTION SUAFUNCAO()
LOCAL PAGINA := 1
IF TIPO_ACAO != MOSTRA_PAG_1
M->AL_TERAR := .F.
ENDIF
DO WHILE .T.
// Aqui voce coloca alguns GETs
IF TIPO_ACAO = CONSULTA .OR. TIPO_ACAO = EXCLUSAO
CLEAR GETS
IF TIPO_ACAO = EXCLUSAO
RETURN .T.
ENDIF
MENSAGEM( "Tecle algo para continuar" )
IF TEC_MOU( 0 ) = T_ESC
RETURN .F.
ENDIF
ELSE
CURSOR( LIGA )
READ
CURSOR( DESLIGA )
IF LASTKEY() = T_ESC
RETURN .F. // Sai da tela
ENDIF
IF LASTKEY() = T_PGUP
PAGINA := 1
LOOP
ENDIF
ENDIF
PAGINA := 2 // Pula para proxima pagina
LOOP
ENDIF
IF PAGINA = 2
// Coloque qualquer coisa aqui
SAVE SCREEN TO ORCA_SCR
@ 13, 7 TO 20, 72
@ 12, 8 SAY "Quantidade"
@ 12, 19 SAY "Descricao"
@ 12, 56 SAY "Unitario"
@ 12, 67 SAY "Desc"
@ 21, 50 SAY "Total"
PUBLIC LisCon1[1],INCLUINDO
LisCon1[1] = 'transform(ES->IDITEM,"9999999")+"³"+substr(ES->DESCRICAO,1,30)+"³"+transform(ES->QUANTIDADE,ES->MASCARA)+"³"+transform(ES->VALORVENDA,"@E 99,999.99")+"³"+transform(ES->IPI,"@E 99.99")'
SELE arquivo
SET ORDER TO 1
GO TOP
KEYBOARD CHR( T_INSERT ) // Ja entra inserindo item
DBEDIT(14, 8,19,71,liscon1,'ORCUDF','','','')
REST SCREEN FROM ORCA_SCR
// A funcao utilizada pelo DBEDIT deve simular o ESC com SHIFT_TAB
//IF LASTKEY() = T_ESC // Nao use onde tera o dbedit()
// RETURN .F. // Sai da tela
//ENDIF
IF LASTKEY() = T_SH_TAB
PAGINA := 1
LOOP
ENDIF
PAGINA := 3 // Pula para proxima pagina
LOOP
ENDIF
IF PAGINA = 3
// Codigo da pagina 3
IF LASTKEY() = T_ESC
RETURN .F. // Sai da tela
ENDIF
IF LASTKEY() = T_SH_TAB
PAGINA := 2
LOOP
ENDIF
RETURN .T. // nao usa LOOP na ultima pagina tem de sair
ENDIF
ENDDO
É mais ou menos isto, avalie e entenda.
Enviado: 15 Fev 2007 23:34
por Ricardo Sales Ribeiro
Rochinha
Valeu pela dica, vou agilizar e v~e o q vai dar. Obrigado
Enviado: 16 Fev 2007 11:47
por Eliane
Também preciso desta rotina para apresentar uma tabela de SERVIÇOS com seus respectivos ítens. Vou tentar fazer.