Ola, estou modificando um programa, e quando fui alterar uma parte, de cadastro de clientes, eu inseri um novo campo no dbf, o campo fax que não existia, na hora de compila ta tudo OK, mas na hora da execução, digito tudu certinho, quando confirmo pra salvar as informações ele aparece o seguinte erro:
Error dbfntx/1020 Data type error
Gostaria de saber o que eu posso estar fazendo de errado, vou passar abaixo o proc gravação, pra ver se tem algum erro:
**********gravar
proc gravar()
sele cli
seek xcodcli
if foun()
rlock()
else
appe blank
endif
replace CODCLI with XCODCLI,;
RAZAO with XRAZAO,;
FANTASIA with XFANTASIA,;
CARIMBO with XCARIMBO,;
ENDERECO with XENDERECO,;
BAIRRO with XBAIRRO,;
UF with XUF,;
CEP with XCEP,;
CIDADE with XCIDADE,;
INSC with XINSC,;
CNPJ with XCNPJ,;
LOCALPGTO with XLOCALPGTO,;
localentr with Xlocalentr,;
CREDAFET with XCREDAFET,;
MOTIVO with XMOTIVO,;
OBS with XOBS,;
DATEMI with CXDATEMI,;
CODTRASN with XCODTRASN,;
CODREp with XCODREp,;
fone with xfone,;
fax with xfax
commit
unlock
return
dbfntx
Moderador: Moderadores
Junior,
Provavelmente você esta gravando um tipo de variavel, em um campo de outro tipo. De uma verificada nos campos do arquivo, e nas variaveis.
Eu tomo como padrão colocar no inicio de cada variavel a letra do seu tipo, declaro e inicializo todas elas com um determinado valor, ex:
LOCAL cNomeCliente := Space(40)
LOCAL dDataAtual := Date()
LOCAL nVlrSalario := 0
LOCAL lFlag := .T.
Isso é apenas um exemplo, de uma olhada no conteudo das variaveis, deve ter alguma com algum valor diferente.
Abraços,
Dercide.
Provavelmente você esta gravando um tipo de variavel, em um campo de outro tipo. De uma verificada nos campos do arquivo, e nas variaveis.
Eu tomo como padrão colocar no inicio de cada variavel a letra do seu tipo, declaro e inicializo todas elas com um determinado valor, ex:
LOCAL cNomeCliente := Space(40)
LOCAL dDataAtual := Date()
LOCAL nVlrSalario := 0
LOCAL lFlag := .T.
Isso é apenas um exemplo, de uma olhada no conteudo das variaveis, deve ter alguma com algum valor diferente.
Abraços,
Dercide.

