Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function TfrmExportacaoHORUSv2.getEntradas:
- ServicoHorus.informarEntradaMedicamentoEmLote;
- var
- lEntrada: ServicoHorus.informarEntradaMedicamentoEmLote;
- array_reg3: ServicoHorus.Array_Of_registro3;
- reg3: ServicoHorus.registro3;
- valor: ServicoHorus.nuValorUnitario;
- FormatSettings: TFormatSettings;
- lCont: Integer;
- lCds: TClientDataSet;
- begin
- Result := nil;
- FormatSettings.DecimalSeparator := '.';
- lcont := -1;
- try
- lCds := TClientDataSet.Create(nil);
- lCds.CloneCursor(cdsEntrada, False);
- lCds.First;
- prgProgresso.Max := lcds.RecordCount;
- prgProgresso.Position := 0;
- if (lCds.RecordCount > 0) then
- begin
- lEntrada := ServicoHorus.informarEntradaMedicamentoEmLote.Create;
- lEntrada.identificacao := ServicoHorus.IdentificacaoType.Create;
- lEntrada.identificacao.idOrigem := ServicoHorus.idOrigem.M;
- lEntrada.identificacao.coIBGE := FCodIBGE;
- SetLength(array_reg3, lCds.RecordCount);
- lCds.First;
- while not lCds.eof do
- begin
- reg3 := ServicoHorus.registro3.Create;
- reg3.estabelecimento := ServicoHorus.EstabelecimentoType.Create;
- reg3.estabelecimento.coCNES := IntToStr(FCodCNES);
- if lCds.FieldByName('tipo_estabelecimento').AsString = 'A' then
- reg3.estabelecimento.coTipoEstabelecimento :=
- ServicoHorus.coTipoEstabelecimento.A;
- if lCds.FieldByName('tipo_estabelecimento').AsString = 'R' then
- reg3.estabelecimento.coTipoEstabelecimento :=
- ServicoHorus.coTipoEstabelecimento.R;
- if lCds.FieldByName('tipo_estabelecimento').AsString = 'F' then
- reg3.estabelecimento.coTipoEstabelecimento :=
- ServicoHorus.coTipoEstabelecimento.F;
- reg3.produto := ServicoHorus.ProdutoEntradaType.Create;
- reg3.produto.coRegistroOrigem := lCds.FieldByName('codentr2').AsString;
- reg3.produto.nuProduto := lCds.FieldByName('tipo_produto').AsString +
- lCds.FieldByName('codcatmat').AsString;
- reg3.produto.nuLote := lCds.FieldByName('lote').AsString;
- reg3.produto.dtValidade := FormatDateTime('dd-mm-yyyy',
- lCds.FieldByName('valid').AsDateTime);
- reg3.produto.qtProduto := lCds.FieldByName('quant').AsInteger;
- reg3.produto.dtRegistro := FormatDateTime('dd-mm-yyyy',
- lCds.FieldByName('data').AsDateTime);
- reg3.produto.nuNotaFiscal := lCds.FieldByName('notaf').AsString;
- if lCds.FieldByName('fornec_internacional').AsString = 'N' then
- reg3.produto.nuCNPJFabricante :=
- lCds.FieldByName('cnpj_fabricante').AsString
- else
- reg3.produto.noFabricanteInternacional :=
- lCds.FieldByName('nome_fabricante').AsString;
- valor := ServicoHorus.nuValorUnitario.Create;
- valor.DecimalString := FormatFloat('0.0000',
- lCds.FieldByName('preco').AsFloat, FormatSettings);
- reg3.produto.nuValorUnitario := valor;
- reg3.produto.nuCNPJDistribuidor :=
- lcds.FieldByName('cnpj_fornecedores').AsString;
- reg3.produto.tpEntradaEstoque :=
- fTipoEntrada(lCds.FieldByName('tipo').AsString);
- Inc(lCont);
- array_reg3[lCont] := reg3;
- lCds.Next;
- end;
- lEntrada.registro := array_reg3;
- end;
- Result := lEntrada;
- except
- on ex: Exception do
- begin
- TFuncaoGeral.pr_Mensagem('Erro: ' + ex.Message + sLineBreak + 'Por favor, contate o suporte.');
- end;
- end;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement