Jump to content
Fivewin Brasil

Nota Fiscal


betovsp

Recommended Posts

Boa Noite pessoal, preciso de um help/idéia de como fazer:

Já Tenho feito em CLIPPER/DOS e FW Edição através do Browse para inserir produtos na Nota Fiscal, gostaria de trabalhar diferente, Se fosse em DOS, usando o while, saberia fazer, mas como procedo em FW, pois quero dar um GET no código, que ja faz a pesquisa, jogando os dados como unidade, valor unitário, icm, nome, e o cliente vai colocar a quantidade, depois, gostaria de voltar ao GET do código novamente, pois vou atualizar o listbox e valores totais da nota. O problema é voltar ao GET, não sei como proceder.

Espero ter passado o que quero, e aguardo a ajuda mais uma vez dos amigos.

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

Boa Noite pessoal, preciso de um help/idéia de como fazer:

Já Tenho feito em CLIPPER/DOS e FW Edição através do Browse para inserir produtos na Nota Fiscal, gostaria de trabalhar diferente, Se fosse em DOS, usando o while, saberia fazer, mas como procedo em FW, pois quero dar um GET no código, que ja faz a pesquisa, jogando os dados como unidade, valor unitário, icm, nome, e o cliente vai colocar a quantidade, depois, gostaria de voltar ao GET do código novamente, pois vou atualizar o listbox e valores totais da nota. O problema é voltar ao GET, não sei como proceder.

Espero ter passado o que quero, e aguardo a ajuda mais uma vez dos amigos.

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

Boa Noite pessoal, preciso de um help/idéia de como fazer:

Já Tenho feito em CLIPPER/DOS e FW Edição através do Browse para inserir produtos na Nota Fiscal, gostaria de trabalhar diferente, Se fosse em DOS, usando o while, saberia fazer, mas como procedo em FW, pois quero dar um GET no código, que ja faz a pesquisa, jogando os dados como unidade, valor unitário, icm, nome, e o cliente vai colocar a quantidade, depois, gostaria de voltar ao GET do código novamente, pois vou atualizar o listbox e valores totais da nota. O problema é voltar ao GET, não sei como proceder.

Espero ter passado o que quero, e aguardo a ajuda mais uma vez dos amigos.

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

Ola amigaum...

Bem... em five eu fiz uma pesquisa igual e ao mesmo tempo diferente do meu DOS. A minha pesquisa para inclusao de produto na nota (venda) é simples e acho q funcional. Eu coloco os dados da nota como cliente, vendedor, tabela de precos e tal... no momento que cai no listbox eu permito q o usuario use de hotkeys para inserir novos produtos eu uso a tcl inserte... tbm deixei um botao caso o usuario prefira usar o mouse clica no botao inserir produto... Ao chamar a insercao de produtos abro uma tela onde o usuario pode digitar o nome do produto, o codigo do produto, a referencia, complemento e fabricante... o sistema entao vai me trazer para um temporario todos os produtos q o usuario quer de acordo com os dados q ele especificou... note q isto é em uma tela separada da listbox e tela principal da minha nota... Ok... monto local e em uso exclusivo um bd temporario onde contem os produtos.. somente os produtos q o usuario quer consultar... ae o usuario seleciona o produto.. dando enter ou clicando duas vezes.. o sistema cai em um campo pedindo quantidade e valor unitario.. e entao eu jogo isso em uma array... o usuario pode realizar nesta tela N buscas e consultas e incluir N produtos ... ao clicar no botao transferir para venda.. o sistema pega tudo oq esta na array e joga para a minha tela de venda principal... entao coloquei atravez do botao direito do mouse a possibilidade de se alterar os dados como preco e quantidade...

Creio q seria issu... é diferente e igual ao mesmo tempo.. diferente pq as telas sao diferentes igual pq realizo o mesmo processo ... pego N produtos... e jogo tudo para a minha venda ... rapido... nao precisa toda hora ficar buscando produto... e o usuario trata os dados a hora q quiser.. excluindo.. incluindo ou alterando oq quer.. mas sempre abrindo uma dialog e nunca faço na list...

Espero ter te dado uma ideia amigaum

um xharbraco

Um Xharbraço.

Uso Fwh 2.5 (xharbour 0.99.3) e Xmate Para Compilar

Link to comment
Share on other sites

Beto, tudo bem??

Não entendi porque você precisa voltar ao GET do produto que você acabou de completar, só para atualizar os valores totais da nota.

Um abraço

Paulo/CONTATO SISTEMAS

Clipper53b / FW26 / Blinker70

Ajudar é um prazer, agradecer é uma obrigação

PRESTIGIEM O III ENCONTRO DE USUÃRIOS DE FIVEWIN - 2005

Link to comment
Share on other sites

Beto,

Eu entendi o que você está querendo fazer, mas agora sou eu que não sei se vou conseguir te explicar como fiz. Como diz o Personal: TODO PROGRAMADOR É MUITIU DOIDIU.

Criei um dbf sem índice, com um campo só chamado ORDEM C 2. Incluí nele 70 registros, preenchendo com 01, 02, 03...70

Inicializo as variáveis de acordo com a opção do usuário (inclusão,alteração,consulta,etc), observando-se que todas elas mantêm um padrão: wPROD01,02..70; wQT01,02..70 e assim por diante.

Direciono o LISTBOX para esse DBF auxiliar, tratando as variáveis através de uma única função.

Depois disso (UFA!!!), fica muito fácil fazer o que você quer, bastando um DIALOG só, com os GETS e 2 BUTTONS (Novo e voltar), passando por parâmetro SOMENTE o conteúdo do campo ORDEM. A atualização do LISTBOX seria feita somente após clicar no BUTTON "Voltar"

Como trabalhamos basicamente com indústrias, até hoje, 70 ítens sobram no sistema, não chegando nem perto desse limite.

Se precisar de mais idéias malucas, é só gritar

Paulo/CONTATO SISTEMAS

Clipper53b / FW26 / Blinker70

Ajudar é um prazer, agradecer é uma obrigação

PRESTIGIEM O III ENCONTRO DE USUÃRIOS DE FIVEWIN - 2005

Editado por - pauloaraujo on 19/09/2005 19:57:37

Link to comment
Share on other sites

Kleyton, utilizei da forma que vc me indicou e funcionou do jeito que eu queria pra voltar ao GET, agora, só não esta atualizando meu browse:

@ 7.2,2 GET opro VAR vpro SIZE 24,11 PICTURE "999999" VALID(Busca1(1,ZeraCod(vpro),"Produto")) OF oDlgNfe

@ 7.2,5.5 GET onpro VAR vnpro PICTURE "@!" SIZE 113,11 OF oDlgNfe

@ 7.2,20.3 GET otpro VAR vtpro PICTURE "@!" SIZE 113,11 OF oDlgNfe

@ 8.5,2 GET oqtd VAR vqtd PICTURE "999999" VALID(vqtd>0) SIZE 24,11 OF oDlgNfe

@ 8.5,5.5 GET oval VAR vval PICTURE "@E 99,999.99" VALID(CalcTot(vqtd,vval)) SIZE 40,11 OF oDlgNfe

@ 8.5,12 GET oicm VAR vicm PICTURE "99" SIZE 15,11 OF oDlgNfe

@ 8.5,16 GET oipi VAR vipi PICTURE "99" VALID(CalcIPI(vqtd,vval,vipi)) SIZE 15,11 OF oDlgNfe

@ 8.5,20.3 GET ototn VAR vtotn PICTURE "@E 999,999.99" VALID(TotBrowse(vtotn,oBrwPNfe)) SIZE 40,11 OF oDlgNfe

STATIC FUNCTION TotBrowse(total,oBrwPNfe)

vvtotMat+=total

dbSelectArea("Ent")

Ent->(dbSetOrder(0))

Ent->(dbAppend())

while !RecLock(10) ; END

Ent->nota:=vnota ; Ent->data:=vdtem ; Ent->codf:=vcodf ; Ent->codp:=vcodp ; Ent->nomp:=vnpro

Ent->unde:=vund ; Ent->qtde:=vqtd ; Ent->vuni:=vval ; Ent->vtot:=vtotn ; Ent->aliq:=vicm

Ent->ipip:=vipi ; Ent->tamp:=vtpro

Ent->(dbCommit()) ; Ent->(dbUnlock())

Ent->(dbSetOrder("nota"))

vpro:=SPACE(06) ; opro:VARPUT(SPACE(06))

vnpro:=SPACE(35) ; vtpro:=SPACE(35) ; onpro:VARPUT(SPACE(35)) ; otpro:VARPUT(SPACE(35))

vqtd:=vval:=vicm:=vipi:=vtotn:=0 ; oqtd:VARPUT(0) ; oval:VARPUT(0) ; oicm:VARPUT(0) ; oqtd:VARPUT(0) ; ototn:VARPUT(0)

ovtotMat:Refresh() ; opro:REFRESH() ; onpro:REFRESH() ; otpro:REFRESH()

oqtd:REFRESH() ; oval:REFRESH() ; oicm:REFRESH() ; oipi:REFRESH() ; ototn:REFRESH()

oBrwPNfe:Refresh()

xSetFocus(opro)

Return(.T.)

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

Recapitulando.

voce tem uma tela onde tem um listbox, que voce coloca os

itens.

Tem um get que voce faz a validação dos codigos, abastece o arquivo do listbox.

Tem um get que digita a quantidade.

Depois de digitar a quantidade, voce quer voltar pro get do codigo.

Supondo da seguinte maneira

@ l,c Get oCod VAR _Cod Pict "999999" OF oDlg Pixel Size 40,10 UPDATE Valid vCod()

@ l,c Get oQtd VAR _Qtd Pict "999999" OF oDlg Pixel Size 40,10 UPDATE Valid vQtd()

Static Function vCod()

Vai no arquivo pega, os dados e carrega nas variaveis.

oDlg:Update()

Return(.t.)

Static function vQtd()

Faça a validação da sua Quantidade.

Grave os dados no arquivo.

Atualize a variaveis.

de um Refresh no listbox.

oQtd:oJump:=oCod

Return(.t.)

rodape_fw.jpg

Link to comment
Share on other sites

Kleyton, segue abaixo meu código.

Sergio, é exatamente o que faço:

STATIC FUNCTION Edita(oBrw,cad,modo)

LOCAL Gravar:=Gravarp:=.F.,oDlgNfe,oBtn1,oBtn2,lCont:=.T.

PRIVATE onota:=vnota:=IIF(cad,SPACE(6),Nfe->nota),vcancela:=ocancela:=IIF(cad,.F.,Nfe->cancela)

PRIVATE odupl:=vdupl:=IIF(cad,SPACE(10),Nfe->dupl)

PRIVATE opedi:=vpedi:=IIF(cad,SPACE(10),Nfe->pedi)

PRIVATE odtem:=vdtem:=IIF(cad,DATE(),Nfe->dtem),omotivo:=vmotivo:=IIF(cad,SPACE(50),Nfe->motivo)

PRIVATE ovtot:=vvtot:=ovtotMat:=vvtotMat:=IIF(cad,0,Nfe->vtot)

PRIVATE odesc:=vdesc:=IIF(cad,0,Nfe->desc)

PRIVATE otelf:=vtelf:=IIF(cad,SPACE(10),For->telc)

// esta parte é para o fechamento da n.f. buscando dados do Cap

PUBLIC ocodf:=vcodf:=IIF(cad,SPACE(04),Nfe->codf)

PUBLIC onomf:=vnomf:=IIF(For->(dbSeek(vcodf)),For->nom,SPACE(25))

PUBLIC ocodp:=vcodp:=IIF(cad,SPACE(03),IF(Cap->(dbSeek(vnota)),Cap->codp,SPACE(3)))

PUBLIC onomp:=vnomp:=IIF(Cpg->(dbSeek(vcodp)),Cpg->nome,SPACE(25))

PUBLIC octaf:=vctaf:=IIF(cad,SPACE(04),Cap->ctaf)

PUBLIC oncta:=vncta:=IIF(Cta->(dbSeek(vctaf)),Cta->nom,SPACE(30))

PUBLIC vpro:=opro:=SPACE(06),vnpro:=onpro:=vtpro:=otpro:=SPACE(35),vval:=oval:=vicm:=oicm:=oqtd:=vqtd:=oipi:=vipi:=vtotn:=ototn:=0,ound:=vund:=SPACE(02)

PUBLIC oMostra,vMostra

DEFINE FONT oFnt2 NAME "Tahoma" SIZE 0,30 BOLD

DEFINE DIALOG oDlgNfe FROM 1,15 TO 433,658 PIXEL FONT oFnt1 STYLE nOr(DS_MODALFRAME,WS_POPUP,WS_VISIBLE,WS_DLGFRAME) COLOR nRgb(0,0,0),nRgb(214,211,206)

@ 0.5,1 GROUP oGroup1 TO 5.5,45 OF oDlgNfe LABEL "Nota Fiscal"

IF modo==3

@ 6,1 GROUP oGroup2 TO 12.7,45 OF oDlgNfe LABEL "Itens da Nota Fiscal"

ELSE

@ 5.7,1 GROUP oGroup2 TO 8.9,45 OF oDlgNfe LABEL "Entrada dos Produtos"

@ 9,1 GROUP oGroup3 TO 12.7,45 OF oDlgNfe LABEL "Itens da Nota Fiscal"

@ 6.5,2 SAY "Código" SIZE 30,8 OF oDlgNfe

@ 6.5,5.5 SAY "Artigo" SIZE 30,8 OF oDlgNfe

@ 6.5,20.3 SAY "Nº / Tamanho" SIZE 50,8 OF oDlgNfe

@ 7.8,2 SAY "Qtde" SIZE 30,8 OF oDlgNfe

@ 7.8,5.5 SAY "Vr. Unitário" SIZE 50,8 OF oDlgNfe

@ 7.8,12 SAY "% Icms" SIZE 30,8 OF oDlgNfe

@ 7.8,16 SAY "% Ipi" SIZE 30,8 OF oDlgNfe

@ 7.8,20.3 SAY "Vr. Total" SIZE 50,8 oF oDlgNfe

END

@ 1,2 SAY "Nº Nota Fiscal" SIZE 50,8 OF oDlgNfe

@ 1,7.5 SAY "Data Emissão" SIZE 45,8 OF oDlgNfe

@ 1,13 SAY "Pedido" SIZE 45,8 OF oDlgNfe

@ 2.4,02 SAY "Nome do Fornecedor" SIZE 70,8 OF oDlgNfe

@ 2.4,31.5 SAY "Telefone" SIZE 30,8 OF oDlgNfe

@ 3.8,02 SAY "Condição de Pagamento" SIZE 70,8 OF oDlgNfe

@ 3.8,21 SAY "Conta Financeira" SIZE 70,8 OF oDlgNfe

@ 185,07 SAY "Total->" SIZE 45,14 FONT oFnt2 PIXEL COLOR nRgb(255,0,0),nRgb(214,211,206) OF oDlgNfe

IF vcancela

modo:=3

END

IF modo#3

@ 1.7,02 GET onota VAR vnota PICTURE "@!" SIZE 38,11 OF oDlgNfe

@ 1.7,7.5 GET odtem VAR vdtem PICTURE "99/99/9999" SIZE 38,11 OF oDlgNfe

@ 1.7,13 GET opedi VAR vpedi PICTURE "999999" SIZE 24,11 OF oDlgNfe

@ 3.1,02 GET ocodf VAR vcodf SIZE 21,11 PICTURE "9999" VALID(Busca(4,ZeraCod(vcodf),"Fornecedor",1) .AND. Verifica(cad)) OF oDlgNfe

@ 3.1,05 TBTNGET onomf VAR vnomf RESNAME "Buscar" SIZE 200,11 ACTION Busca(4,,"Fornecedor",1) OF oDlgNfe

@ 3.1,31.5 GET otelf VAR vtelf SIZE 44,11 PICTURE "@R (99)9999-9999" OF oDlgNfe READONLY

@ 4.5,2 GET ocodp VAR vcodp PICTURE "999" VALID(Busca(5,ZeraCod(vcodp),"Condição de Pagamento")) SIZE 15,11 OF oDlgNfe

@ 4.5,4.5 TBTNGET onomp VAR vnomp RESNAME "Buscar" ACTION Busca(5,,"Condição de Pagamento") SIZE 120,11 OF oDlgNfe

@ 4.5,21 GET octaf VAR vctaf PICTURE "9999" VALID(Busca(6,ZeraCod(vctaf),"Conta Financeira")) SIZE 18,11 OF oDlgNfe

@ 4.5,23.5 TBTNGET oncta VAR vncta RESNAME "Buscar" ACTION Busca(6,,"Conta Financeira") SIZE 120,11 OF oDlgNfe

@ 14.38,7 GET ovtotMat VAR vvtotMat FONT oFnt2 SIZE 85,14 PICTURE "@E 9,999,999.99" OF oDlgNfe READONLY

@ 7.2,2 GET opro VAR vpro SIZE 24,11 PICTURE "999999" VALID(Busca1(1,ZeraCod(vpro),"Produto")) OF oDlgNfe

@ 7.2,5.5 GET onpro VAR vnpro PICTURE "@!" SIZE 113,11 OF oDlgNfe

@ 7.2,20.3 GET otpro VAR vtpro PICTURE "@!" SIZE 113,11 OF oDlgNfe

@ 8.5,2 GET oqtd VAR vqtd PICTURE "999999" VALID(vqtd>0) SIZE 24,11 OF oDlgNfe

@ 8.5,5.5 GET oval VAR vval PICTURE "@E 99,999.99" VALID(CalcTot(vqtd,vval)) SIZE 40,11 OF oDlgNfe

@ 8.5,12 GET oicm VAR vicm PICTURE "99" SIZE 15,11 OF oDlgNfe

@ 8.5,16 GET oipi VAR vipi PICTURE "99" VALID(CalcIPI(vqtd,vval,vipi)) SIZE 15,11 OF oDlgNfe

@ 8.5,20.3 GET ototn VAR vtotn PICTURE "@E 999,999.99" VALID(TotBrowse(vtotn,oBrwPNfe)) SIZE 40,11 OF oDlgNfe

dbSelectArea("Ent")

OrdScope(0,vnota+vcodf)

OrdScope(1,vnota+vcodf)

Ent->(dbGoTop())

@ 135,15 BROWSE oBrwPNfe SIZE 293,40 PIXEL ALIAS Ent OF oDlgNfe COLOR nRgb(0,0,0),nRgb(239,255,255)

ADD COLUMN TO oBrwPNfe HEADER "Código" DATA FieldWBlock("codp",Select()) 3DLOOK FALSE SIZE 60 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "Artigo" DATA FieldWBlock("nomp",Select()) PICTURE "@!" SIZE 210 PIXEL 3DLOOK FALSE

ADD COLUMN TO oBrwPNfe HEADER "Nº / Tamanho" DATA FieldWBlock("tamp",Select()) PICTURE "@!" SIZE 210 PIXEL 3DLOOK FALSE

ADD COLUMN TO oBrwPNfe HEADER "Qtde" DATA FieldWBlock("qtde",Select()) 3DLOOK FALSE SIZE 60 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "Vr. Unitário" DATA FieldWBlock("vuni",Select()) PICTURE "@E 99,999.99" 3DLOOK FALSE SIZE 80 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "Vr. Total" DATA FieldWBlock("vtot",Select()) PICTURE "@E 99,999.99" 3DLOOK FALSE SIZE 80 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "IPI" DATA FieldWBlock("ipip",Select()) PICTURE "@E 99" 3DLOOK FALSE SIZE 30 PIXEL

oBrwPNfe:nHeightCell+=6

oBrwPNfe:nHeightHead+=4

@ 185,209 SBUTTON oBtnEnt1 RESOURCE "OK1","OK2","OK1","OK2";

OF oDlgNfe PROMPT "Confirma" FONT oFnt1 ACTION (Gravar:=Valorok(),oDlgNfe:End());

SIZE 50,15 PIXEL TOOLTIP IF(cad,"Confirma a Inclusão dos Dados da Nota Fiscal","Confirma a Alteração dos Dados da Nota Fiscal");

COLOR CLR_BLACK,{|oB| IF(oB:lMouseOver,{CLR_WHITE,CLR_CYAN},{CLR_CYAN,CLR_WHITE})};

TEXT POSITION ON_RIGHT

@ 185,264 SBUTTON oBtnEnt2 RESOURCE "CANCEL1","CANCEL2","CANCEL1","CANCEL2";

OF oDlgNfe PROMPT "Cancela" FONT oFnt1 ACTION (Gravar:=.F.,oDlgNfe:End());

SIZE 50,15 PIXEL TOOLTIP "Cancela a Operação e Retorna a Tela Anterior";

COLOR CLR_BLACK,{|oB| IF(oB:lMouseOver,{CLR_WHITE,CLR_CYAN},{CLR_CYAN,CLR_WHITE})};

TEXT POSITION ON_RIGHT CANCEL

ELSE

@ 1.7,02 GET onota VAR vnota PICTURE "@!" SIZE 38,11 OF oDlgNfe READONLY

@ 1.7,7.5 GET odtem VAR vdtem PICTURE "99/99/9999" SIZE 38,11 OF oDlgNfe READONLY

@ 1.7,13 GET opedi VAR vpedi PICTURE "999999" SIZE 24,11 OF oDlgNfe READONLY

@ 3.1,02 GET ocodf VAR vcodf SIZE 21,11 PICTURE "99999" OF oDlgNfe READONLY

@ 3.1,05 TBTNGET onomf VAR vnomf RESNAME "Buscar" SIZE 200,11 OF oDlgNfe READONLY

@ 3.1,31.5 GET otelf VAR vtelf SIZE 44,11 PICTURE "@R (99)9999-9999" OF oDlgNfe READONLY

@ 4.5,2 GET ocodp VAR vcodp PICTURE "999" SIZE 15,11 OF oDlgNfe READONLY

@ 4.5,4.5 TBTNGET onomp VAR vnomp RESNAME "Buscar" SIZE 120,11 OF oDlgNfe READONLY

@ 4.5,21 GET octaf VAR vctaf PICTURE "9999" SIZE 18,11 OF oDlgNfe READONLY

@ 4.5,23.5 TBTNGET oncta VAR vncta RESNAME "Buscar" SIZE 120,11 OF oDlgNfe READONLY

@ 14.38,7 GET ovtotMat VAR vvtotMat FONT oFnt2 SIZE 85,14 PICTURE "@E 9,999,999.99" OF oDlgNfe READONLY

IF vcancela

@ 1,26 SAY "Motivo do Cancelamento" SIZE 80,8 OF oDlgNfe

@ 1.7,26 GET omotivo VAR vmotivo SIZE 100,11 OF oDlgNfe READONLY

@ 17,135 SAY "Cancelada" SIZE 72,16 FONT oFnt2 PIXEL COLOR nRgb(255,0,0),nRgb(214,211,206) OF oDlgNfe

END

dbSelectArea("Ent")

OrdScope(0,vnota+vcodf)

OrdScope(1,vnota+vcodf)

Ent->(dbGoTop())

@ 95,15 BROWSE oBrwPNfe SIZE 293,75 PIXEL ALIAS Ent OF oDlgNfe COLOR nRgb(0,0,0),nRgb(239,255,255)

ADD COLUMN TO oBrwPNfe HEADER "Código" DATA FieldWBlock("codp",Select()) 3DLOOK FALSE SIZE 60 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "Artigo" DATA FieldWBlock("nomp",Select()) PICTURE "@!" SIZE 210 PIXEL 3DLOOK FALSE

ADD COLUMN TO oBrwPNfe HEADER "Nº / Tamanho" DATA FieldWBlock("tamp",Select()) PICTURE "@!" SIZE 210 PIXEL 3DLOOK FALSE

ADD COLUMN TO oBrwPNfe HEADER "Qtde" DATA FieldWBlock("qtde",Select()) 3DLOOK FALSE SIZE 60 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "Vr. Unitário" DATA FieldWBlock("vuni",Select()) PICTURE "@E 99,999.99" 3DLOOK FALSE SIZE 80 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "Vr. Total" DATA FieldWBlock("vtot",Select()) PICTURE "@E 99,999.99" 3DLOOK FALSE SIZE 80 PIXEL

ADD COLUMN TO oBrwPNfe HEADER "IPI" DATA FieldWBlock("ipip",Select()) PICTURE "@E 99" 3DLOOK FALSE SIZE 30 PIXEL

oBrwPNfe:nHeightCell+=6

oBrwPNfe:nHeightHead+=4

@ 185,264 SBUTTON oBtnFor3 RESOURCE "SAIDA1","SAIDA2","SAIDA1","SAIDA2";

OF oDlgNfe PROMPT "Sair" FONT oFnt1 ACTION (Gravar:=.F.,oDlgNfe:End());

SIZE 50,15 PIXEL TOOLTIP "Sair e Retornar a Tela Anterior";

COLOR CLR_BLACK,{|oB| IF(oB:lMouseOver,{CLR_WHITE,CLR_CYAN},{CLR_CYAN,CLR_WHITE})};

TEXT POSITION ON_RIGHT CANCEL

END

ACTIVATE DIALOG oDlgNfe CENTERED ON PAINT (oMsg:=TMsgBar():New(oDlgNfe,"Manutenção de Nota Fiscais de Compra"))

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

SOCORRO BETO... Fiquei todo 'MAREADO' -> Não SAY nem se encontro o caminho de casa hoje... hehehehehe. PARA COM ISSO, DEIXA DILSO... Deus me livre e guarde... Jesus!

TERCEIRO ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 EU APOIO E VOU.

Bad Boy - São Paulo.

kmt_karinha@pop.com.br

FW 2.3C CLIPPER 5.3B BLINKER 7.0 WORKSHOP.EXE

Link to comment
Share on other sites

citação:Beto, neste código que você postou onde você está dando o comando oBrwPNfe:REFRESH()? Você tem que executar este comando logo após gravar os ítens da nota...
id=quote>id=quote>

Aqui Kleyton

quote]@ 8.5,20.3 GET ototn VAR vtotn PICTURE "@E 999,999.99" VALID(TotBrowse(vtotn,oBrwPNfe)) SIZE 40,11 OF oDlgNfe

STATIC FUNCTION TotBrowse(total,oBrwPNfe)

vvtotMat+=total

dbSelectArea("Ent")

Ent->(dbSetOrder(0))

Ent->(dbAppend())

while !RecLock(10) ; END

Ent->nota:=vnota ; Ent->data:=vdtem ; Ent->codf:=vcodf ; Ent->codp:=vcodp ; Ent->nomp:=vnpro

Ent->unde:=vund ; Ent->qtde:=vqtd ; Ent->vuni:=vval ; Ent->vtot:=vtotn ; Ent->aliq:=vicm

Ent->ipip:=vipi ; Ent->tamp:=vtpro

Ent->(dbCommit()) ; Ent->(dbUnlock())

Ent->(dbSetOrder("nota"))

vpro:=SPACE(06) ; opro:VARPUT(SPACE(06))

vnpro:=SPACE(35) ; vtpro:=SPACE(35) ; onpro:VARPUT(SPACE(35)) ; otpro:VARPUT(SPACE(35))

vqtd:=vval:=vicm:=vipi:=vtotn:=0 ; oqtd:VARPUT(0) ; oval:VARPUT(0) ; oicm:VARPUT(0) ; oqtd:VARPUT(0) ; ototn:VARPUT(0)

ovtotMat:Refresh() ; opro:REFRESH() ; onpro:REFRESH() ; otpro:REFRESH()

oqtd:REFRESH() ; oval:REFRESH() ; oicm:REFRESH() ; oipi:REFRESH() ; ototn:REFRESH()

oBrwPNfe:Refresh()

xSetFocus(opro)

Return(.T.)

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

citação:

Po Kapi, ta tão intragavel assim icon_smile_sad.gif

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO


id=quote>id=quote>

SUPER KRUEL! EU NÃO KONSIGO DAR 'LEITURA'. ALGUEM ME AJUDE POR FAVOR! KOISA HORROROSA. Brincadeira Beto. É só para descontrair.

TERCEIRO ENCONTRO DE FIVEWINNERS NOVEMBRO DE 2005 EU APOIO E VOU.

Bad Boy - São Paulo.

kmt_karinha@pop.com.br

FW 2.3C CLIPPER 5.3B BLINKER 7.0 WORKSHOP.EXE

Link to comment
Share on other sites

Beto, só mais algumas perguntas para resolversos de vez...

Você já verificou se realmente está sendo gravado o registro?

No browse, você move o cursor para cima ou para baixo para ver se o produto previamente confirmado está lá?

Coloque o @ na linha abaixo, na variável oBrwPNfe)

STATIC FUNCTION TotBrowse(total,@oBrwPNfe)

Acima do comando oBrwPNfe:Refresh(), vá para o início do banco de dados, tipo Ent->(dbgotop())

Kleyton

Clipper5.2E+Clipper5.3b+Blink7+FW2.0d

cleitonbala@bol.com.br

Link to comment
Share on other sites

Coloque o @ na linha abaixo, na variável oBrwPNfe)

STATIC FUNCTION TotBrowse(total,@oBrwPNfe)

Kleyton, erro na compilação:

Error C2001 Sintax Error: '@'

Abraços.

Beto

betovsp@hotmail.com

(16)9148-1515

CL53B + FW2.0 + @ SAY + BLINKER 7

Ribeirão Preto/SP

III ENCONTRO DE FIVEWINERS -> ESSE EU NÃO PERCO

Link to comment
Share on other sites

Você já verificou se realmente está sendo gravado o registro?

No browse, você move o cursor para cima ou para baixo para ver se o produto previamente confirmado está lá?

O comando abaixo está correto? o filtro é vnota+vcodf do produto? está filtrando apenas um produto? nota+produto, ai não irá mostrar no browse os outros produtos, pois está filtrando apenas o código de um produto...

OrdScope(0,vnota+vcodf)

OrdScope(1,vnota+vcodf)

Kleyton

Clipper5.2E+Clipper5.3b+Blink7+FW2.0d

cleitonbala@bol.com.br

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...