Se eu clikar em qualquer botão é como se fize-se um read no get ,e ele entra na função e retorna .f. pois o get é vazio ....
Código: Selecionar todos
function forn(TIP_CAD)
#include "windows.ch"
#include "guilib.ch"
#INCLUDE "inkey.ch"
**************************
SELECT C
USE FORNEC shared
SET INDEX TO xNfor,xCforn,xPimpfor
SELECT F
Use CEP shared
set index to xNCep, xCcidade
***************************************************
Sele C
private ojarfor,oBrw,oWin,oR1,oR2,oFont,oBoton1, oBoton2,oBoton3,oBoton4
private vWidth:= GetdesktopWidth()
private vHeight:=GetdesktopHeight()
private iniciar:=.f.
private oimagem1:=def+"\sysfia\image\"
private oimagem2:=def+"\sysfia\image\"
private oimagem3:=def+"\sysfia\image\"
private oimagem4:=def+"\sysfia\image\"
If TIP_CAD="INCLUIR"
novo_for()
elseif TIP_CAD="ALTERAR"
msginfo("Em constru‡Æo")
endif
************************(adicionar novo)************************
Function NOVO_for(lcolor)
If lColor <> Nil
SetColorinFocus( lColor )
EndIf
private oR3,oR4,ojar_inclu
private oCOD,oFORN,oCNPj,oIE,oEND,oBAIRRO,oCIDADE,oESTADO,oCEP;
,oFONE,oFAX,oDATCAD,oSITE,oEMAIL,oOBS
private vCOD:=0
private vFORN:=space(50)
private vCNPJ:=space(18)
private vIE:=space(15)
private vEND:=space(50)
private vBAIRRO:=space(50)
private vCIDADE:=space(50)
private vESTADO:=space(50)
private VCEP:=0
private vFONE:=space(12)
private vFAX:=space(12)
private vDATCAD:=space(50)
private vSITE:=space(50)
private vEMAIL:=space(50)
private vOBS:=space(50)
if GETDESKTOPWIDTH()=1024
vWidth=vWidth-445
vheight=vheight-300
else
vWidth=vWidth-220
vheight=vheight-150
endif
PREPARE FONT oFont NAME "LUCIDA CONSOLE" WIDTH 0 HEIGHT -11
INIT DIALOG oJar_inclu CLIPPER NOEXIT TITLE "FORNECEDORES";
AT 00,00;
FONT oFont;
SIZE vWIDTH,vHEIGHT;
STYLE DS_CENTER;
ICON oIcone
@ 00,00 PANEL oPanel SIZE getdesktopwidth(),60
@ 00,00,vWIDTH,vHEIGHT-390 RECT oR3 of ojar_inclu RECT_STYLE 3
@ 10,85,vWIDTH-15,vHEIGHT-50 RECT oR4 of ojar_inclu RECT_STYLE 3
@ 06,03 OWNERBUTTON oBoton1 OF opanel ID 108 ON CLICK {||salva()};
SIZE 50,55 FLAT TEXT "Salvar" ;
FONT oFont COORDINATES 0,35,0,0 ;
BITMAP oimagem1+"46.bmp"TRANSPARENT COORDINATES 0,4,0,0;
TOOLTIP "Salvar"
@ 60,03 OWNERBUTTON oBoton2 OF oPanel ID109 ON CLICK {||sair()} ;
SIZE 55,55 FLAT ;
TEXT "Sair" FONT oFont COORDINATES 0,35,0,0 ;
BITMAP oimagem2+"sair.bmp" COORDINATES 0,4,0,0 ;
TOOLTIP "Sair"
PREPARE FONT oFont NAME "ARIAL" WIDTH 0 HEIGHT -15
@24,95 say "Fonecedor" FONT ofont size 80,20
@24,125 SAY "CEP" FONT ofont size 80,20
@24,155 SAY 'Endereco' FONT ofont size 80,20
@24,185 SAY 'Bairro' FONT ofont size 80,20
@24,215 SAY 'Cidade' FONT ofont size 80,20
@400,215 say'Estado' FONT ofont size 80,20
@24,245 say "Site" FONT ofont size 80,20
@24,275 SAY 'e-mail' FONT ofont size 80,20
@24,305 SAY 'Tel.' FONT ofont size 80,20
@215,305 SAY 'Fax' FONT ofont size 80,20
@350,305 SAY 'Data' FONT ofont size 80,20
@24,335 SAY 'CNPJ' FONT ofont size 80,20
@265,335 say 'IE' FONT ofont size 80,20
PREPARE FONT oFont NAME "LUCIDA CONSOLE" WIDTH 0 HEIGHT -13
@100,94 GET oForn var vForn Font oFont PICTURE REPL("X",50) size 450,20 STYLE ES_AUTOHSCROLL VALID {||cVazio(vforn)}
@100,124 GET oVcep var Vcep Font oFont picture '99999-999' size 80,20
@100,155 GET oEnd var vEnd Font oFont picture REPL("X",50) size 450,20 STYLE ES_AUTOHSCROLL
@100,185 GET oBairro var vBairro Font oFont picture REPL("X",50) size 200,20 STYLE ES_AUTOHSCROLL
@100,215 GET oCidade var vCidade Font oFont picture REPL("X",50) size 250,20 STYLE ES_AUTOHSCROLL
@450,215 GET oEstado var vEstado Font oFont picture REPL("!",02) size 25,20
@100,245 GET oSite var vSite Font oFont picture REPL("X",50) size 450,20 STYLE ES_AUTOHSCROLL
@100,275 GET oEmail var vEmail Font oFont picture REPL("X",50) size 450,20 STYLE ES_AUTOHSCROLL
@100,305 GET oFone var vFone Font oFont picture '99-9999-9999' size 105,20
@240,305 GET oFax var vFax Font oFont picture '99-9999-9999' size 105,20
vDatcad:=date()
@385,305 say vDatcad size 80,20
@100,335 GET ocnpj var vCnpj Font oFont picture '99.999.999/9999-99' size 155,20
@280,335 GET oIE var vIE Font oFont picture '999.999.999.999' size 130,20
ACTIVATE DIALOG oJar_inclu
**************************<verifica se esta vazio>***************
static func cVazio(vforn)
priv ok:=.t.
do while ok
if empty(vforn)
MSGINFO("Preeencha os campos corretamente")
ok:=.f.
exit
else
ok=.t.
exit
endif
enddo
return ok