Boa noite segue os prgs do cadastro de cliente
cliente.prg // cadastro de cliente
Código: Selecionar todos
#INCLUDE "BOX.CH"
SAVE SCREEN TO aa
USE CLIENTE ALIAS CLIENTE NEW
IF (!FILE("CODIGO.NTX"))
INDEX ON CODIGO TO CODIGO
ENDIF
IF (!FILE("CLIENTE.NTX"))
INDEX ON NOME TO CLIENTE
ENDIF
IF (!FILE("TEL1.NTX"))
INDEX ON TELEFONE TO TEL1
ENDIF
IF (!FILE("NASC.NTX"))
INDEX ON ANIVER TO NASC
ENDIF
SET INDEX TO CODIGO,CLIENTE,TEL1,NASC // o erro esta dando aqui
DO WHILE .T.
vCodigo:=0
vNome:=SPACE(50)
vEndereco:=SPACE(40)
vBairro:=SPACE(25)
vCompl:=SPACE(30)
vCidade:=SPACE(30)
vTelefone:=SPACE(11)
vCelular:=SPACE(11)
vTelcom:=SPACE(11)
dAniver:=CTOD(" ")
vMae:=SPACE(50)
vCep:=SPACE(09)
vUf:=SPACE(02)
vEmail:=SPACE(30)
vCpf:=SPACE(13)
vRg:=SPACE(13)
@00,00,23,79 BOX B_DOUBLE +" "
@02,01 TO 02,78 DOUBLE
@21,01 TO 21,78 DOUBLE
@02,00 SAY CHR(204)
@02,79 SAY CHR(185)
@21,00 SAY CHR(204)
@21,79 SAY CHR(185)
@22,63 SAY "< ESC Sair ! >"
@01,28 SAY "[ Cadastro de clientes ]"
@03,01 SAY "Codigo..............:"
@04,01 SAY "Nome................:"
@05,01 SAY "Endereco............:"
@06,01 SAY "Complemnto..........:"
@07,01 SAY "Bairro..............:"
@08,01 SAY "Cidade..............:"
@09,01 SAY "Telefone............:"
@10,01 SAY "Celular.............:"
@11,01 SAY "Telefone Comercial..:"
@12,01 SAY "Data Aniversario....:"
@13,01 SAY "Nome Mae............:"
@14,01 SAY "Cep.................:"
@15,01 SAY "Estado..............:"
@16,01 SAY "Email...............:"
@17,01 SAY "Cpf.................:"
@18,01 SAY "Rg..................:"
@03,23 GET vCodigo PICTURE "99999"
READ
IF LASTKEY()=27
EXIT
ENDIF
IF vCodigo=0
ALERT(" Codigo Invalido ; < Tecle ENTER > !")
LOOP
ENDIF
GO TOP
SEEK vCodigo
IF (FOUND())
ALERT(" Codigo Ja Cadrastado ; < Tecle ENTER > !")
@04,23 SAY nome PICTURE "@!"
@05,23 SAY endereco PICTURE "@!"
@06,23 SAY compl PICTURE "@!"
@07,23 SAY bairro PICTURE "@!"
@08,23 SAY cidade PICTURE "@!"
@09,23 SAY telefone PICTURE "@R (999) 9999-9999"
@10,23 SAY celular PICTURE "@R (999) 9999-9999"
@11,23 SAY telcom PICTURE "@R (999) 9999-9999"
@12,23 SAY aniver PICTURE "@D"
@13,23 SAY mae PICTURE "@!"
@14,23 SAY cep PICTURE "99999-999"
@15,23 SAY uf PICTURE "@!"
@16,23 SAY email
@17,23 SAY cpf PICTURE "@R 999.999.999-99"
@18,23 SAY rg PICTURE "999999999-99"
SET COLOR TO
INKEY(0)
LOOP
ENDIF
@04,23 GET VNOME PICTURE "@!" VALID (!EMPTY(vNome))
@05,23 GET VENDERECO PICTURE "@!"
@06,23 GET VCOMPL PICTURE "@!"
@07,23 GET VBAIRRO PICTURE "@!"
@08,23 GET VCIDADE PICTURE "@!"
@09,23 GET VTELEFONE PICTURE "@R (999) 9999-9999"
@10,23 GET VCELULAR PICTURE "@R (999) 9999-9999"
@11,23 GET VTELCOM PICTURE "@R (999) 9999-9999"
@12,23 GET DANIVER PICTURE "@D"
@13,23 GET VMAE PICTURE "@!"
@14,23 GET VCEP PICTURE "99999-999"
@15,23 GET VUF PICTURE "@!"
@16,23 GET VEMAIL
@17,23 GET VCPF PICTURE "@R 999.999.999-99"
@18,23 GET VRG PICTURE "999999999-99"
READ
IF LASTKEY()!=27
APPEND BLANK
REPLACE CODIGO WITH vCodigo
REPLACE NOME WITH vNome
REPLACE ENDERECO WITH vEndereco
REPLACE COMPL WITH vCompl
REPLACE BAIRRO WITH vBairro
REPLACE CIDADE WITH vCidade
REPLACE TELEFONE WITH vTelefone
REPLACE CELULAR WITH vCelular
REPLACE TELCOM WITH vTelcom
REPLACE ANIVER WITH dAniver
REPLACE MAE WITH vMae
REPLACE CEP WITH vCep
REPLACE UF WITH vUf
REPLACE EMAIL WITH vEmail
REPLACE CPF WITH vCpf
REPLACE RG WITH vRg
COMMIT
ENDIF
ALERT("Cadastro Feito com Sucesso !")
RESTORE SCREEN FROM aa
ENDDO
CLEAR
cad2.prg //tela principal
Código: Selecionar todos
#INCLUDE "BOX.CH"
SET DATE BRITISH
SET CENTURY ON
SET SCOREBOARD OFF
SET DELETED ON
SET WRAP ON
nOp:=1
CLEAR SCREEN
@24,00 CLEAR TO 24,79
DO WHILE .T.
SET COLOR TO RG+/B+
@24,00 SAY PADC("Antonio Ferreira Moura",80) COLOR "RG+/B+"
SET COLOR TO BG+/BG+
@01,00,23,79 BOX REPLICATE(CHR(178),9)
SET COLOR TO GR+/B+
@00,00 CLEAR TO 00,79
@00,01 SAY "Sistema de Controle de Cliente Versao 1.0 FREE"
@00,68 SAY DTOC(DATE())
SET COLOR TO W+/B+
SET COLOR TO B+/B+
@06,05 CLEAR TO 16,30
SET COLOR TO W+/N
SET COLOR TO W+/BG+,W+/B+,,,GR+/BG+
SET COLOR TO W+/BG+
@05,04 CLEAR TO 15,28
@05,04,15,28 BOX B_SINGLE
@06,06 PROMPT "Cadastro de Cliente "
@07,06 PROMPT "Alterar Cliente "
@08,06 PROMPT "Excluir Cliente "
@09,06 PROMPT "Consulta por Codigo "
@10,06 PROMPT "Consulta por Nome "
@11,06 PROMPT "Relatorio por Codigo "
@12,06 PROMPT "Relatorio por Nome "
@13,06 PROMPT "Manutencao "
@14,06 PROMPT "Sair do Programa "
MENU TO nOp
DO CASE
CASE nOp=1
DO CLIENTE
CASE nOp=2
DO ALTCLI
CASE nOp=3
DO EXCCLI
CASE nOp=4
DO CONSCOD
CASE nOp=5
DO CONSNOM
CASE nOp=6
DO RELCOD
CASE nOp=7
DO RELNOM
CASE nOp=8
DO MANUTEN
CASE nOp=9
EXIT
ENDCASE
ENDDO
CLEAR
RETURN
conscod.prg // consulta por codigo
Código: Selecionar todos
CLEAR
@01,00 TO 03,79 DOUBLE
@04,00 TO 23,79 DOUBLE
@06,01 TO 06,78 DOUBLE
@21,01 TO 21,78 DOUBLE
@06,00 SAY CHR(204)
@21,00 SAY CHR(204)
@06,79 SAY CHR(185)
@21,79 SAY CHR(185)
SELECT 1
USE CLIENTE
IF (!FILE("CODIGO.NTX"))
INDEX ON STR(CODIGO,5,0) TO CODIGO
ENDIF
SET INDEX TO CODIGO
DO WHILE .T.
vCodigo:=0
cSai:="N"
@02,25 SAY "[ Consulta por Codigo ]"
@22,63 SAY "< ESC Sair ! >"
@05,01 SAY "Codigo...................:" GET vCodigo PICTURE "99999" VALID(vCodigo>0)
READ
IF LASTKEY()=27
EXIT
ENDIF
GO TOP
SEEK vCodigo
IF FOUND()
@ 07,01 SAY "Nome................:" +NOME
@ 08,01 SAY "Endereco............:" +ENDERECO
@ 09,01 SAY "Complemento.........:" +COMPL
@ 10,01 SAY "Bairro..............:" +BAIRRO
@ 11,01 SAY "Cidade..............:" +CIDADE
@ 12,01 SAY "Telefone............:" +TELEFONE
@ 13,01 SAY "Celular.............:" +CELULAR
@ 14,01 SAY "Telefone Comercial..:" +TELCOM
@ 15,01 SAY "Data de Aniversario.:" +DTOC(ANIVER)
@ 16,01 SAY "Nome Mae............:" +MAE
@ 17,01 SAY "Cep.................:" +CEP
@ 18,01 SAY "Estado..............:" +UF
@ 19,01 SAY "Email...............:" +EMAIL
@ 20,01 SAY "C.p.f...............:" +CPF
@ 20,42 SAY "Rg..................:" +RG
ELSE
ALERT("Codigo Nao Cadastro !")
ENDIF
@ 22,01 SAY "Deseja Sair?...:" GET cSai PICTURE "@!" VALID (cSai $ "SN")
READ
IF cSai= "S"
EXIT
ENDIF
ENDDO
CLEAR
RETURN
consmon.prg // consulta por nome
Código: Selecionar todos
CLEAR SCREEN
@01,00 TO 03,79 DOUBLE
@04,00 TO 23,79 DOUBLE
@06,01 TO 06,78 DOUBLE
@21,01 TO 21,78 DOUBLE
@06,00 SAY CHR(204)
@21,00 SAY CHR(204)
@06,79 SAY CHR(185)
@21,79 SAY CHR(185)
SELECT 1
USE CLIENTE
IF (!FILE("CLIENTE.NTX"))
INDEX ON NOME TO CLIENTE
ENDIF
SET INDEX TO CLIENTE
DO WHILE .T.
vNome:=SPACE(50)
cSai= "N"
@02,25 SAY "[ Consulta por Nome ]"
@20,63 SAY "< ESC Sair ! >"
@22,01 SAY "Digite o Nome.:" GET vNome PICTURE "@!"
READ
IF LASTKEY()=27
EXIT
ENDIF
GO TOP
SEEK vNome
IF (FOUND())
@07,01 SAY "Nome..................:" +NOME
@08,01 SAY "Endereco..............:" +ENDERECO
@09,01 SAY "Complemento...........:" +COMPL
@10,01 SAY "Bairro................:" +BAIRRO
@11,01 SAY "Cidade................:" +CIDADE
@12,01 SAY "Telefone..............:" +TELEFONE
@13,01 SAY "Celular...............:" +CELULAR
@14,01 SAY "Telefone comercial....:" +TELCOM
@15,01 SAY "Data Aniversario......:" +DTOC(ANIVER)
@16,01 SAY "Nome Mae..............:" +MAE
@17,01 SAY "Cep...................:" +CEP
@18,01 SAY "Estado................:" +UF
@19,01 SAY "E-mail................:" +EMAIL
@20,01 SAY "C.p.f.................:" +CPF
@18,28 SAY "Rg....................:" +RG
ELSE
ALERT("Nome Nao Cadastrado !")
ENDIF
READ
IF cSai= "S"
EXIT
ENDIF
ENDDO
CLEAR