Ok, muito obrigado, funcionou.
fiz assim para testes.:
Código: Selecionar todos
if .not. empty(razcli)
op=msgbox2("CONFIRMA EXCLUSAO DO CLIENTE?" )
if op=1
csql:="delete from cadcli where razcli='"+cadcli->razcli+"'"
sqlexec(csql)
sqlexecute( "commit" )
endif
endif
Segue codigo, estou testando a sqllib do Vailton, mas quero utilizar comandos sql.
Código: Selecionar todos
#include 'sqllib.ch'
function clientes()
telacli=savescreen(00,00,31,97)
cSQL:= "select * from cadcli order by sql_rowid"
select 1
use sql (csql) alias cadcli
go top
telcli()
do while .t.
set cursor off
setcolor("7/1,7/1")
@ 03,09 say sql_rowid
@ 03,35 say razcli
@ 04,16 say fancli
@ 04,72 say tippes
@ 04,93 say blocli
@ 06,06 say cepcli picture "@R 99999-999"
@ 06,27 say endcli
@ 06,87 say padr(numero,04)
@ 07,11 say baicli
@ 07,51 say cidcli
@ 07,87 say ufcli
if tippes = "FISICA"
@ 08,11 say cpfcnpj picture "@R 999.999.999-99"
else
@ 08,11 say cpfcnpj picture "@R 99.999.999/9999-99"
endif
@ 08,40 say inscrg
@ 08,71 say contato
@ 09,11 say fonecli picture "@R (99)9999-9999"
@ 09,31 say faxcli picture "@R (99)9999-9999"
@ 09,55 say celcli picture "@R (99)9999-9999"
@ 09,78 say nextel
@ 10,08 say email
@ 10,59 say website
ik=0
ik = inkey(0)
if ik=27
restscreen(00,00,31,97,telacli)
exit
elseif ik=5
skip -1
ik = 0
elseif ik=24
skip
ik = 0
elseif ik = 6
go bottom
elseif ik = 1
go top
elseif ik = 105 .or. ik = 73
icadcli()
atucadcli()
elseif ik = 68 .or. ik = 100
select 1
use
cSQL:= "select * from cadcli order by sql_rowid"
select 1
use sql (csql) alias cadcli
go top
elseif ik = 78 .or. ik = 110
select 1
use
cSQL:= "select * from cadcli order by razcli"
select 1
use sql (csql) alias cadcli
go top
elseif ik = 69 .or. ik = 101
if .not. empty(razcli)
op=msgbox2("CONFIRMA EXCLUSAO DO CLIENTE?" )
if op=1
csql:="delete from cadcli where razcli='"+cadcli->razcli+"'"
sqlexec(csql)
sqlexecute( "commit" )
endif
endif
else
tone(300)
endif
if eof()
skip -1
registro=sql_rowid
endif
if bof()
go top
registro=sql_rowid
endif
enddo
select 1
use
return
*************************************************************************************************
function icadcli()
local irazcli:=space(61),ifancli:=space(40),itippes:=space(08),iblocli:=space(03),;
icepcli:=space(08),iendcli:=space(50),inumero:=space(04),ibaicli:=space(30),icidcli:=space(30),;
iufcli:=space(02),icpfcnpj:=space(14),iinscrg:=space(20),icontato:=space(25),ifonecli:=space(10),;
ifaxcli:=space(10),icelcli:=space(10),inextel:=space(18),iemail:=space(40),iwebsite:=space(37)
telcli()
do while .t.
setcolor("w/b,w+/b,,,w/b")
@ 03,35 get irazcli picture "@!KX" valid !empty(irazcli)
@ 04,16 get ifancli picture "@!KX" valid !empty(ifancli)
@ 06,06 get icepcli picture "@R 99999-999"
set cursor on
read
set cursor off
if lastkey() == 27
return
endif
op=msgbox2("CONFIRMA INCLUSAO DO CLIENTE?" )
if op = 1
// if len(alltrim(icpfcnpj)) = 14
// itippes="JURIDICA"
// else
// itippes="FISICA"
// endif
sqlexecute('insert into cadcli(razcli,fancli,cepcli) values ("'+irazcli+'","'+ifancli+'","'+icepcli+'")')
endif
exit
enddo
*************************************************************************************************
*************************************************************************************************
function atucadcli()
select 1
use
cSQL:= "select * from cadcli order by sql_rowid"
select 1
use sql (csql) alias cadcli
go top
*************************************************************************************************
O erro ocorria quanto tentava utilizar a coluna sql_rowid.