[firebase-br] Ajuda(Cannot edit Current row)

Reijanio Nunes Ribeiro rnribeiro em gmail.com
Sex Mar 16 17:26:24 -03 2007


e quanto aos a formatação original tem como deixar os zeros normais como no
arquivo txt

Em 16/03/07, Eduardo Bahiense <eduardo em icontroller.com.br> escreveu:
>
> Olá Reijanio
>
>        Você está tentando aramazenar 3.420.011.021 em um campo
> configurado para aceitar, no máximo, 2.147.483.647 (INTEGER)
>
> Modifique o tipo de campo de INTEGER para BIGINT ou NUMERIC(18,0)
>
> Abs, Eduardo
>
>
> Reijanio Nunes Ribeiro escreveu:
> > Bom dia pessoal gostaria de uma ajudinha de vc's pois estou c/ um
> problema,
> > criei um importador de tabelas no delphi pra importar txt, ate ai tudo
> bem.
> > a tabela tem esse metadata:
> > CREATE TABLE "IMPORTARTXT"
> > (
> >   "CODIGO"  INTEGER NOT NULL,
> >   "DESCRICAO"  VARCHAR(25),
> >   "DESC_COMPLEM"  VARCHAR(29),
> >   "QTD_MIN"  INTEGER,
> >   "PRECO_VENDA"  INTEGER,
> >   "COD_PROC"  INTEGER,
> >   "PERC_RED_ICMS"  INTEGER,
> >   "PERC_IPI"  INTEGER,
> >   "CLASS_FISCAL"  INTEGER,
> >   "MODELO"  VARCHAR(130),
> >   "HIERARQ_PROD"  VARCHAR(18),
> >   "TERMINADOR"  CHAR(1)
> > );
> >  se no campo CODIGO coloco do tipo varchar(13) q é o tamanho do campo
> ele da
> > o erro *arithimetic overflow.........*
> > se coloco como esta ai ele importa mais qdo chega num determinado
> registro q
> > nuda a sequencia numerica de 00000xxxxxx, para 000xxxxxxx e diz q "*is
> not
> > valid integer value*"
> > (so lembrando esse campo codigo é tdodo numerica daforma q ta ai tipo
> > 0000001201654 e quando chega nesse ponto 0003420011021 da essa mensage
> *"is
> > not valid......* n entendo pq e consigo baicar soaté o codigo anterior a
> > esse ai, depois de baixado os codigos aparecem na tabela sem os zeros e
> n
> > são *editaveis *qualquer alteração q tento fazer da a msg q diz * Cannot
> > edit current row* ou *Cannot delete current row* não entendo o q pode
> ser
> > isso ficaria muito grato se pudessem me ajudar.
> > e tbm se me desse uma dica de como posso deixar os numeros igual ao
> original
> > ou seja com esses zeros pois da forma q a tabela esta retira todos os
> zeros
> > a esquerda.
> > pra quem quiser ver como fiz no delphi e puder me dar uma força tai a
> > sintase:
> > procedure TF_importar.BitBtn1Click(Sender: TObject);
> > var
> > Txt: TextFile;
> > Entrada: string;
> > begin
> > BitBtn1.Enabled := False;
> > if opendialog1.Execute then
> > begin
> >   F_Importar.ClientDataSet1.EmptyDataSet;//zera tabela
> >   F_Importar.ClientDataSet1.Open;//abre tabela
> >   AssignFile(Txt,(Opendialog1.FileName
> > ){'c:\Estudo\Importar\Lista_13P_modelo'});
> >  // Animate1.Visible := true;
> >  // animate1.Active := true;
> >   Reset(Txt);
> >   while not Eoln(Txt) do
> >   begin
> >     ReadLn(Txt,Entrada);
> >     F_Importar.ClientDataSet1.insert;
> >   //showMessage('-'+copy(entrada,1,13)+'-');
> >     F_Importar.ClientDataSet1.FieldByName('codigo').value
> > :=StrToInt(copy(entrada,01,13));
> > //   showMessage('-'+copy(entrada,1,13)+'-');
> >     F_Importar.ClientDataSet1.FieldByName('Descricao').Value
> > :=copy(entrada,14,25);
> >     F_Importar.ClientDataSet1.FieldByName('desc_complem').Value :=
> > copy(entrada,39,29);
> >     F_Importar.ClientDataSet1.FieldByName('qtd_min').value :=
> > copy(entrada,68,03);
> >     F_Importar.ClientDataSet1.FieldByName('preco_venda').Value :=
> > copy(entrada,71,12);
> >     F_Importar.ClientDataSet1.FieldByName('cod_proc').Value :=
> > copy(entrada,83,01);
> >     F_Importar.ClientDataSet1.FieldByName('perc_red_icms').Value :=
> > StrToFloat(copy(entrada,84,02));
> >     F_Importar.ClientDataSet1.FieldByName('perc_ipi').Value :=
> > StrToFloat(copy(entrada,86,04));
> >     F_Importar.ClientDataSet1.FieldByName('class_fiscal').Value :=
> > copy(entrada,90,10);
> >     F_Importar.ClientDataSet1.FieldByName('modelo').Value :=
> > copy(entrada,100,130);
> >     F_Importar.ClientDataSet1.FieldByName('hierarq_prod').Value :=
> > copy(entrada,230,18);
> >     F_Importar.ClientDataSet1.FieldByName('terminador').Value :=
> > copy(entrada,248,01);
> >     F_Importar.ClientDataSet1.Post;
> >     //NeatoMeter1.caption := 'Importando, Aguarde...'+ IntToStr(
> > ClientdataSet1.RecordCount);
> > end;
> >     CloseFile(Txt);
> >      //NeatoMeter1.Caption := 'Importação ralizada com sucesso...';
> >      //NeatoMeter1.percent := 100;
> >      BitBtn1.Enabled := true;
> >      F_IMportar.Height := 205;
> >      F_Importar.ClientHeight := 180;
> > label1.Visible := true;
> > label1.Caption := 'Foi importado um total de' +IntToStr(
> > clientDataSet1.RecordCount)+ 'Registros com sucesso';
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista