[firebase-br] Conversao de valores
Maria Ap Rosa da Silva
mariaaprs em hotmail.com
Sáb Set 29 17:38:56 -03 2007
O problema é que não consegui fazer isso, será que vc poderia passar como
faz
>From: "Anderson Miranda Barrozo" <andersonpaduarj em hotmail.com>
>Reply-To: FireBase <lista em firebase.com.br>
>To: lista em firebase.com.br
>Subject: Re: [firebase-br] Conversao de valores
>Date: Sat, 29 Sep 2007 20:35:08 +0000
>
>Maria,
>
> Nesta parte do seu programa vc pega os valores:
>
> posicao5:=Pos(',',s3);
> lpr_valor_nota:=copy(s3,1,posicao5-1);
> s4:=copy(s3,posicao5+1,Length(s3));
>
> Sugiro que vc trate esta variavel Lpr_valor_nota, ou seja, primeiro
>vc
>pegar o valor e depois vc troque o ponto pela virgula, pois para atualizar
>campo double precision tem que ser: 200,00
>
>
>Anderson
>
>
>
> >From: "Maria Ap Rosa da Silva" <mariaaprs em hotmail.com>
> >Reply-To: FireBase <lista em firebase.com.br>
> >To: lista em firebase.com.br
> >Subject: Re: [firebase-br] Conversao de valores
> >Date: Sat, 29 Sep 2007 17:02:42 -0300
> >
> >origem é em clarion com sql, este é o arquivo que geraram pra mim:
> >(R,Numero, Data, Data Emissão, Série, Valor, Fornecedor
> >D,Numero, Produto, Quantidade, Valor Unitário, Total, Icms, Vlr Unit
> >Liquido
> >
> >R,004556,'2007-08-01','3',8452.50,12211
> >D,004556,3591,14700.00,0.5750,8452.50,0.00,8452.50)
> >
> >como a separação é feita com virgula, então criei esta rotina:
> > try
> > if opendialog1.Execute then
> > begin
> > assignfile(arq,opendialog1.FileName);//escolhe o arquivo
>txt
> > reset(arq); //posiciona no inicio do arquivo
> > vm_importado:=0;
> > vm_alterado:=0;
> > contador:=0;
> >
> > Memo.Clear;
> > Memo.Lines.Add('||> Importação: '+ opendialog1.FileName +'
> ><||');
> > Memo.Lines.Add(' ');
> >
> > // importação
> > while not eof(arq) do
> > begin
> > readln(arq,s); //grava o conteudo da linha na variavel
>s
> > contador:=contador + 1;
> > if contador > 3 then
> > begin
> >
> > posicao:=copy(s,1,1);
> > // MESTRE
> >********************************************
> > IF posicao = 'R' THEN
> > begin
> > posicao1:=Pos(',',s);
> > s:=copy(s,posicao1+2,Length(s));
> >
> > posicao2:=Pos(',',s);
> > lpr_numero_nota:=copy(s,1,posicao2-1);
> > s1:=copy(s,posicao2+2,Length(s));
> >
> > posicao3:=Pos(',',s1);
> > lpr_data_emissao:=copy(s1,1,posicao3-2);
> > data:=copy(lpr_data_emissao,6,2)+
> >'/'+copy(lpr_data_emissao,09,2)+ '/'+ copy(lpr_data_emissao,01,4);
> > s2:=copy(s1,posicao3+2,Length(s1));
> >
> > posicao4:=Pos(',',s2);
> > lpr_serie:=copy(s2,1,posicao4-2);
> > s3:=copy(s2,posicao4+2,Length(s2));
> >
> > posicao5:=Pos(',',s3);
> > lpr_valor_nota:=copy(s3,1,posicao5-1);
> > s4:=copy(s3,posicao5+1,Length(s3));
> >
> > for_cod:=copy(s4,1,posicao5-1);
> >
> > Qrpesquisa.Close;
> > Qrpesquisa.ParamByName('NOTA').AsInteger
>:=
> >QrnotasLPR_NUMERO_NOTA.AsInteger;
> >
>Qrpesquisa.ParamByName('CODIGO').AsInteger
> >:=
> >QrpesquisaFOR_COD.AsInteger;
> > Qrpesquisa.Open;
> > if Qrpesquisa.recordcount = 0 then
> > begin
> > Qrnotas.Append;
> >
> >
> > QrnotasLPR_NUMERO_NOTA.AsInteger
>:=
> >strtoint(LPR_NUMERO_NOTA);
> > QrnotasLPR_DATA_EMISSAO.AsDateTime
>:=
> >strtodate(data);
> > QrnotasLPR_SERIE.AsInteger
>:=
> >strtoint(LPR_SERIE);
> > QrnotasLPR_VALOR_NOTA.Value
>:=
> >strtoint(LPR_VALOR_NOTA);
> > QrnotasFOR_COD.Value
>:=
> >strtoint(FOR_COD);
> >
> > Qrnotas.Post;
> > end;
> > end;
> > // FIM MESTRE
> >********************************************
> >
> >
> >
> > // DETALHE
> >********************************************
> > IF posicao = 'D' THEN
> > begin
> > posicao1:=Pos(',',s);
> > // lpr_numero_nota:=copy(s,1,posicao2+2);
> > s1:=copy(s,posicao1+2,Length(s));
> >
> > posicao2:=Pos(',',s1);
> > pro_cod:=copy(s1,1,posicao2-1);
> > s2:=copy(s1,posicao2+2,Length(s1));
> >
> > posicao3:=Pos(',',s2);
> > ilp_qde:=copy(s2,1,posicao3-1);
> > s3:=copy(s2,posicao3+2,Length(s2));
> >
> > posicao4:=Pos(',',s3);
> > ilp_custo_unitario:=copy(s3,1,posicao4-1);
> > s4:=copy(s3,posicao4+2,Length(s3));
> >
> > posicao5:=Pos(',',s4);
> > ilp_custo_total:=copy(s4,1,posicao5-1);
> > s5:=copy(s4,posicao5+2,Length(s4));
> >
> > posicao6:=Pos(',',s5);
> > ilp_icms:=copy(s5,1,posicao7-1);
> > s6:=copy(s3,posicao6,Length(s5));
> >
> > ilp_custo_unit_liq:=copy(s6,1,2);
> >
> > Qrpesquisa.Close;
> > Qrpesquisa.ParamByName('NOTA').AsInteger :=
> >QrnotasLPR_NUMERO_NOTA.AsInteger;
> > Qrpesquisa.ParamByName('CODIGO').AsInteger :=
> >QrpesquisaFOR_COD.AsInteger;
> > Qrpesquisa.Open;
> > if Qrpesquisa.recordcount = 0 then
> > begin
> > Qrnotas.Append;
> >
> >
> > QrnotasLPR_NUMERO_NOTA.AsInteger :=
> >strtoint(LPR_NUMERO_NOTA);
> > QrnotasLPR_DATA_EMISSAO.AsDateTime :=
> >strtodate(LPR_DATA_EMISSAO);
> > QrnotasLPR_SERIE.AsInteger :=
> >strtoint(LPR_SERIE);
> > QrnotasLPR_VALOR_NOTA.Value :=
> >strtoint(LPR_VALOR_NOTA);
> > QrnotasFOR_COD.Value :=
> >strtoint(FOR_COD);
> >
> > Qrnotas.Post;
> > end;
> >
> > end;
> > end;
> > end;
> > end;
> > finally
> > if opendialog1.FileName <> ''then
> > begin
> > closefile(arq);
> > showMessage(' Importação OK ');
> > end
> > else
> > showMessage(' Importação Cancelada ');
> > end;
> > Memo.Lines.Add(' ');
> >
> >Memo.Lines.Add('***************************************************');
> > Memo.Lines.Add('Quantidade de Registros Importados = '+
> >inttostr(vm_importado));
> > Memo.Lines.Add(' ');
> >
> >Memo.Lines.Add('***************************************************');
> > Memo.Lines.Add('Quantidade de Registros Alterados = '+
> >inttostr(vm_alterado));
> >
> > if SaveDialog1.Execute then
> > begin
> > Memo.Lines.SaveToFile(SaveDialog1.FileName);
> > //Memo.Clear;
> > end;
> >
> >
> >O novo campo é LPR_VALOR_NOTA do tipo double precision
> >
> >
> > >From: "Anderson Miranda Barrozo" <andersonpaduarj em hotmail.com>
> > >Reply-To: FireBase <lista em firebase.com.br>
> > >To: lista em firebase.com.br
> > >Subject: Re: [firebase-br] Conversao de valores
> > >Date: Sat, 29 Sep 2007 18:39:16 +0000
> > >
> > >Maria,
> > >
> > > Esclareca um pouco mais:
> > >
> > > . Arquivo origem também e Interbase.
> > > . Qual tipo de campo estava Arquivo Origem e qual tipo campo
> >novo
> > >ARQUIVO.
> > > . Vc criou uma rotina para fazer esta transferencia ou esta
> > >usando
> > >alguma ferramenta.
> > >
> > >Anderson Miranda
> > >
> > >
> > > >From: "Maria Ap Rosa da Silva" <mariaaprs em hotmail.com>
> > > >Reply-To: FireBase <lista em firebase.com.br>
> > > >To: lista em firebase.com.br
> > > >Subject: [firebase-br] Conversao de valores
> > > >Date: Sat, 29 Sep 2007 14:59:45 -0300
> > > >
> > > >boa tarde a todos, preciso de ajuda urgente.
> > > >Estou desenvolvendo um sistema em Delphi e Interbase
> > > >Gostaria de saber como faço para importar valores.
> > > >Quero importar notas fiscais de outro sistema, já me pasaram o
>arquivo
> >a
> > > >ser
> > > >importado, só que quando chega no valor da nota, dá mensagem: 250.00
>is
> > >not
> > > >a valid integer value.
> > > >como faço para tirar a virgula?
> > > >
> > > >_________________________________________________________________
> > > >Inscreva-se no novo Windows Live Mail beta e seja um dos primeiros a
> > >testar
> > > >as novidades-grátis. Saiba mais:
> > >
> >
> >http://www.ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d
> > > >
> > > >
> > > >______________________________________________
> > > >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
> > >
> > >_________________________________________________________________
> > >Chegou o Windows Live Spaces com rede social. Confira
> > >http://spaces.live.com/
> > >
> > >
> > >______________________________________________
> > >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
> >
> >_________________________________________________________________
> >Inscreva-se no novo Windows Live Mail beta e seja um dos primeiros a
>testar
> >as novidades-grátis. Saiba mais:
> >http://www.ideas.live.com/programpage.aspx?versionId=5d21c51a-b161-4314-9b0e-4911fb2b2e6d
> >
> >
> >______________________________________________
> >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
>
>_________________________________________________________________
>Descubra como mandar Torpedos do Messenger para o celular!
>http://mobile.msn.com/
>
>
>______________________________________________
>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
_________________________________________________________________
Verificador de Segurança do Windows Live OneCare: verifique já a segurança
do seu PC! http://onecare.live.com/site/pt-br/default.htm
Mais detalhes sobre a lista de discussão lista