Jump to content

dev botao

CTe onde preencho as informações do Peso Bruto, Peso Base Calculo, Peso Aferido e Cubagem no ACBrMonitor


  • Este tópico foi criado há 499 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Consultores

Bom dia,

Ao criar o arquivo INI, você deve estar gerando a sessão: infQxxx, onde xxx varia de 1 até 999, correto?

Esta sessão pois os seguintes campos: cUnid, tpMed e qCarga.

cUnid aceita os seguintes valores: 00-M3; 01-KG; 02-TON; 03-UNIDADE; 04-LITROS; 05-MMBTU

tpMed é um campo texto com tamanho variável, mínimo 1 e máximo 20 caracteres, onde podemos informar: PESO BRUTO, PESO DECLARADO, PESO CUBADO, PESO AFORADO, PESO AFERIDO, PESO BASE DE CÁLCULO, LITRAGEM, CAIXAS.

qCarga é um campo numérico (15 posições, sendo 11 inteiras e 4 decimais) onde informamos a quantidade.

Essas informações constam no manual referente ao layout do CT-e versão 3.00, página 25.

  • Like 2
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

  • Membros Pro
7 horas atrás, Italo Giurizzato Junior disse:

Bom dia,

Ao criar o arquivo INI, você deve estar gerando a sessão: infQxxx, onde xxx varia de 1 até 999, correto?

Esta sessão pois os seguintes campos: cUnid, tpMed e qCarga.

cUnid aceita os seguintes valores: 00-M3; 01-KG; 02-TON; 03-UNIDADE; 04-LITROS; 05-MMBTU

tpMed é um campo texto com tamanho variável, mínimo 1 e máximo 20 caracteres, onde podemos informar: PESO BRUTO, PESO DECLARADO, PESO CUBADO, PESO AFORADO, PESO AFERIDO, PESO BASE DE CÁLCULO, LITRAGEM, CAIXAS.

qCarga é um campo numérico (15 posições, sendo 11 inteiras e 4 decimais) onde informamos a quantidade.

Essas informações constam no manual referente ao layout do CT-e versão 3.00, página 25.

Mas no Layout do CTe exibe como se fosse uma campo Separado, achei que tivesse campo especifico, na cabeça do cliente ele quer preencher todos, mas pelo que eu vi vc escolhe qual será o padrão do Peso a ser exibido no XML? 

 

image.thumb.png.dcc517d1abcaf562e142f283c3c96228.png

Link to comment
Share on other sites

  • Consultores

Bom dia,

Leia com atenção a coluna de observação do grupo InfQ.

Lá diz: Para o Aéreo é obrigatório....

O seu cliente é uma empresa do modal Rodoviário ou Aéreo?

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

  • Consultores

Boa tarde,

Eu faria da seguinte forma:

[infQ001]
cUnid=00
tpMed=PESO CUBADO
qCarga=100

onde 00 é igual a metro cubico

outro exemplo

[infQ001]
cUnid=01
tpMed=PESO BRUTO
qCarga=100

onde 01 é igual a quilograma

Lembrando que o texto informado em tpMed é livre, mas veja a rotina do componente ACBrCTe usado pelo ACBrMonitor para imprimir o DACTE.

  for i := 0 to (fpCTe.infCTeNorm.InfCarga.InfQ.Count - 1) do
  begin
    case fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].cUnid of
      uM3: rlmQtdUnidMedida4.Lines.Add(FormatFloatBr(msk6x4,
          fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga));
      uKg:
      begin
        if uppercase(trim(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed)) =
          'PESO BRUTO' then
          rlmQtdUnidMedida1.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga))
        else
        if uppercase(trim(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed)) =
          'PESO BASE DE CALCULO' then
          rlmQtdUnidMedida2.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga))
        else
        if uppercase(trim(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed)) =
          'PESO BC' then
          rlmQtdUnidMedida2.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga))
        else
          rlmQtdUnidMedida3.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga));
      end;
      uTON:
      begin
        if uppercase(trim(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed)) =
          'PESO BRUTO' then
          rlmQtdUnidMedida1.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga * 1000))
        else
        if uppercase(trim(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed)) =
          'PESO BASE DE CALCULO' then
          rlmQtdUnidMedida2.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga * 1000))
        else
        if uppercase(trim(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed)) =
          'PESO BC' then
          rlmQtdUnidMedida2.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga * 1000))
        else
          rlmQtdUnidMedida3.Lines.Add(FormatFloatBr(msk6x4,
            fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga * 1000));
      end;
      uUNIDADE, uLITROS, uMMBTU:
      begin
        rlmQtdUnidMedida5.Lines.Add(
          fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].tpMed + ': ' +
          FormatFloatBr(msk6x4, fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].qCarga) + ' ' +
          UnidMedToDescricaoStr(fpCTe.infCTeNorm.InfCarga.InfQ.Items[i].cUnid));
      end;
    end;
  end;

Observe que ele verifica se o conteúdo de tpMed é: PESO BRUTO, ou PESO BASE DE CALCULO ou PESO BC.

  • Like 1
Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

  • Este tópico foi criado há 499 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.