11 Jan 2020 09:23
@ 250,30 BROWSE BROWSE_1 ;
width 800 ;
height 170 ;
HEADERS { ' S ','Item' , 'Exame', 'Descricao do Exame', 'Codigo AMB' , 'Data Coleta' , 'Preco em R$','Prazo','Medicam.'} ;
widthS { 25 , 40 , 60 , 250, 110 , 90 , 90, 50, 70 } ;
WORKAREA CAD ;
fields { 'FLG' , 'item' , 'Codex' , 'Nomex' , 'Codamb' , 'Datcol' ,'Preco','Prazo','Remedio' } ;
READONLY {.T. , .T. , .F. , .T. , .T. , .T. , .T., .T., .T. } ;
VALID { , , { || busc_exa() } , , , , , , } ;
VALIDMESSAGES { ,,' EXAME NAO CADASTRADO ',,,,,,} ;
FONT "MS Sans Serif" SIZE 8 ;
EDIT INPLACE ;
IMAGE {"br0.BMP","br1.BMP","br2.bmp","br3.bmp","br4.bmp","br5.bmp"} ;
LOCK ;
ON GOTFOCUS {|| Pesqexa() } ;
ON HEADCLICK { ,,{ || Premedio()}, { || Pesq_descr()} , { || Pesq_AMB()} ,,}
function busc_exa
if EXAM->(DBseek(MemVar.Cad.Codex))
Return .t.
else
Return .f.
endif
return
11 Jan 2020 10:24
function busc_exa
if EXAM->(DBseek(MemVar.Cad.Codex))
Return .t.
else
Return .f.
endif
return
FUNCTION busc_exa()
RETURN EXAM->( DBseek( MemVar.Cad.Codex ) )
11 Jan 2020 10:46
@ 250,30 BROWSE BROWSE_1 ;
width 800 ;
height 170 ;
HEADERS { ' S ','Item' , 'Exame', 'Descricao do Exame', 'Codigo AMB' , 'Data Coleta' , 'Preco em R$','Prazo','Medicam.'} ;
widthS { 25 , 40 , 60 , 250, 110 , 90 , 90, 50, 70 } ;
WORKAREA CAD ;
fields { 'FLG' , 'item' , 'Codex' , 'Nomex' , 'Codamb' , 'Datcol' ,'Preco','Prazo','Remedio' } ;
READONLY {.T. , .T. , .F. , .T. , .T. , .T. , .T., .T., .T. } ;
VALID { , , { || EXAM->(DBseek(MemVar.Cad.Codex)) } , , , , , , } ;
VALIDMESSAGES { ,,' EXAME NAO CADASTRADO ',,,,,,} ;
FONT "MS Sans Serif" SIZE 8 ;
EDIT INPLACE ;
IMAGE {"br0.BMP","br1.BMP","br2.bmp","br3.bmp","br4.bmp","br5.bmp"} ;
LOCK ;
ON GOTFOCUS {|| Pesqexa() } ;
ON HEADCLICK { ,,{ || Premedio()}, { || Pesq_descr()} , { || Pesq_AMB()} ,,}
11 Jan 2020 10:55
11 Jan 2020 11:10
11 Jan 2020 11:16
Valida Existe( cChave )
nRecNo := RecNo()
lEncontrou := dbSeek ....
GOTO (nRecNo)
RETURN lEncontrou
11 Jan 2020 11:36
Valida Existe( cChave )
nRecNo := RecNo()
lEncontrou := dbSeek ....
GOTO (nRecNo)
RETURN lEncontrou
11 Jan 2020 12:02
@ 250,30 BROWSE BROWSE_1 ;
width 800 ;
height 170 ;
HEADERS { ' S ','Item' , 'Exame', 'Descricao do Exame', 'Codigo AMB' , 'Data Coleta' , 'Preco em R$','Prazo','Medicam.'} ;
widthS { 25 , 40 , 60 , 250, 110 , 90 , 90, 50, 70 } ;
WORKAREA CAD ;
fields { 'FLG' , 'item' , 'Codex' , 'Nomex' , 'Codamb' , 'Datcol' ,'Preco','Prazo','Remedio' } ;
READONLY {.T. , .T. , .F. , .T. , .T. , .T. , .T., .T., .T. } ;
VALID { , , { || busc_exa() } , , , , , , } ;
VALIDMESSAGES { ,,' EXAME NAO CADASTRADO ',,,,,,} ;
FONT "MS Sans Serif" SIZE 8 ;
EDIT INPLACE ;
IMAGE {"br0.BMP","br1.BMP","br2.bmp","br3.bmp","br4.bmp","br5.bmp"} ;
LOCK ;
ON GOTFOCUS {|| Pesqexa() } ;
ON HEADCLICK { ,,{ || Premedio()}, { || Pesq_descr()} , { || Pesq_AMB()} ,,}
function busc_exa
if EXAM->(DBseek(MemVar.Cad.Codex))
Return .t.
else
Return .f.
endif
return
function Pesqexa
If ! Winif
Winif:=.T.
Return nil
End
IF CAD->CODEX=SPACE(5)
Return nil
endif
Wcodexa:=Cad->Codex
CAD->ITEM:=STRZERO(CAD->(RECNO()),2,0)
CAD->CODEX:=EXAM->CODEX
CAD->NOMEX:=EXAM->NOMEX
cad->remedio:=exam->remedio
MCODUS:=Ltrim(CONV->CODUS)
CODX:="COD"+Ltrim(MCODUS)
TABX:="TAB"+Ltrim(MCODUS)
CAD->Codamb:=EXAM->&CODX
CAD->Prazo:=Exam->PRAZO
CAD->DATCOL:=VDATREC
CAD->PRECO:=EXAM->&TABX*CONV->REFUS
If Exam->Prazo>Mprazo
Mprazo:=Exam->prazo
endif
Win_2.Browse_1.Refresh
sele cad
Return nil
11 Jan 2020 12:07
mrcrusso escreveu:Analisando as possibilidades, acho que não é possível fazer essa verificação, pois eu estou usando o browse pra editar o próprio arquivo DBF, e não sei como pegar a variável para fazer a busca, pois a partir do momento em que digito a mesma, ela já é inserida no DBF. Mesmo usando uma função fora do browse ele não faz a busca.O arquivo temporário CAD não é indexado, então usei o comando LOCATE.
11 Jan 2020 15:56
mrcrusso escreveu:Acho que o melhor negócio seria o mais tradicional: teclou ENTER/INSERT, abre uma janela pra digitação.
12 Jan 2020 11:18
15 Jan 2020 18:47
17 Jan 2020 12:23
17 Jan 2020 12:35
19 Jan 2020 10:31