Ir para conteúdo
  • Cadastre-se

dev botao

VEICULO COM CARRETA


marco_visao
Ver Solução Respondido por Gr@c@,
  • Este tópico foi criado há 2295 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Consultores

Boa noite Marco,

Sim, basta você adicionar os dois veículos, o veículo trator e a carreta.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link para o comentário
Compartilhar em outros sites

Boa noite, 

Fiz o teste e não tiver resultado estou deixando o código para ver analisar.

                // Dados do Veículo com a Tração
                with rodo.veicTracao do
                begin
                    placa   := 'XXXXXXX'
                    renavam := 'XXXXXXX'
                    tara    := 'XXXXXXX'
                    capKG   := 'XXXXXXX'
                    capM3   := 'XXXXXXX'
                    UF      := 'XXXXXXX'
                    RENAVAM := 'XXXXXXX'

                    // Dados motorista
                    with condutor.Add do
                    begin
                        xNome := 'XXXXXXX'
                        CPF   := 'XXXXXXX'
                        tpRod := trCavaloMecanico
                        tpCar := tcFechada;
                    end;

                    // Carreta. COM 4 PLACAS
                    for 1 to 4 do
                    begin
                        with rodo.veicReboque. do
                        begin
                            cInt    := 'XXXXXXX'
                            placa   := 'XXXXXXX'
                            renavam := 'XXXXXXX'
                            tara    := 'XXXXXXX'
                            capKG   := 'XXXXXXX'
                            capM3   := 'XXXXXXX'
                            UF      := 'XXXXXXX'
                        end;
                    end;
                end;
 

Atenciosamente,

Marco

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
  • Solution

um trecho do meu codigo. Vê se te ajuda:

                         {--------------------------------------------------------------------------------------------------------------}
                         {veicTracao - inicio                                                                                           }
                         {--------------------------------------------------------------------------------------------------------------}
                         if DM.qryMDFeCabDisponiveis.FieldByName('vei1_Codigo').AsInteger > 0 then
                         begin
                           With RODO.veicTracao do
                           begin
                             cInt    := FormatFloat('0',DM.qryMDFeCabDisponiveis.FieldByName('vei1_Codigo').AsInteger);
                             placa   := TrataPlaca(DM.qryMDFeCabDisponiveis.FieldByName('vei1_Placa').AsString,8);
                             RENAVAM := DM.qryMDFeCabDisponiveis.FieldByName('vei1_RENAVAN').AsString;
                             While Length(RENAVAM) < 9 do RENAVAM := '0'+RENAVAM;
                             tara  := DM.qryMDFeCabDisponiveis.FieldByName('vei1_Tara').AsInteger;
                             capKG := DM.qryMDFeCabDisponiveis.FieldByName('vei1_capKG').AsInteger;
                             capM3 := DM.qryMDFeCabDisponiveis.FieldByName('vei1_capM3').AsInteger;

                             {--------------------------------------------------------------------------------------------------------------}
                             {prop - inicio                                                                                                 }
                             {--------------------------------------------------------------------------------------------------------------}
                             sCNPJProprietario  := TrataCPFCNPJ(DM.qryMDFeCabDisponiveis.FieldByName('vei1_ProprietarioPessoa').AsString,
                                                                DM.qryMDFeCabDisponiveis.FieldByName('vei1_ProprietarioCpfCnpj').AsString);
                             sRNTRCProprietario := TrataRNTRC(DM.qryMDFeCabDisponiveis.FieldByName('vei1_ProprietarioRNTRC').AsString,8);
                             If  (sCNPJProprietario  <> sCNPJEmitente)
                             and (sRNTRCProprietario <> sRNTRCEmitente) then
                             begin
                               With prop do
                               begin
                                 CNPJCPF := sCNPJProprietario;
                                 RNTRC   := sRNTRCProprietario;
                                 xNome   := Trim(Copy(DM.qryMDFeCabDisponiveis.FieldByName('vei1_ProprietarioNome').AsString+space(60),1,60));
                                 IE      := TrataInscricao(DM.qryMDFeCabDisponiveis.FieldByName('vei1_ProprietarioIE').AsString);
                                 UF      := DM.qryMDFeCabDisponiveis.FieldByName('vei1_ProprietarioUF').AsString;
                                 tpProp := StrToTpProp(OK,'1'); //TpcteProp = (0=tpTACAgregado, 1=tpTACIndependente, 2=tpOutros);
                               end;
                             end;
                             {--------------------------------------------------------------------------------------------------------------}
                             {prop - fim                                                                                                    }
                             {--------------------------------------------------------------------------------------------------------------}

                             {--------------------------------------------------------------------------------------------------------------}
                             {condutor - inicio                                                                                             }
                             {--------------------------------------------------------------------------------------------------------------}
                             DM.qryBusca.Close;
                             DM.qryBusca.Sql.Clear;
                             If (bCTe) then
                               begin
                               DM.qryBusca.Sql.Add('Select TOP 10 ite.Motorista,mot.Nome,mot.pessoa,mot.cpfcnpj');
                               DM.qryBusca.Sql.Add('From TB_MDFeIte ite,TB_Motorista mot');
                               DM.qryBusca.Sql.Add('where ite.Empresa        = :Empresa');
                               DM.qryBusca.Sql.Add('  and RTrim(ite.Modelo)  = RTrim(:Modelo)');
                               DM.qryBusca.Sql.Add('  and RTrim(ite.Serie)   = RTrim(:Serie)');
                               DM.qryBusca.Sql.Add('  and ite.Numero         = :Numero');
                               DM.qryBusca.Sql.Add('  and ite.Motorista      IS NOT NULL');
                               DM.qryBusca.Sql.Add('  and ite.Motorista      > 0');
                               DM.qryBusca.Sql.Add('  and mot.Empresa        = ite.Empresa');
                               DM.qryBusca.Sql.Add('  and mot.Codigo         = ite.Motorista');
                               DM.qryBusca.Sql.Add('Group by ite.Motorista,mot.Nome,mot.Pessoa,mot.CpfCnpj');
                               DM.qryBusca.Sql.Add('Order by ite.Motorista,mot.Nome,mot.Pessoa,mot.CpfCnpj');
                               end
                             Else
                             If (bNFe) then
                               begin
                               DM.qryBusca.Sql.Add('Select TOP 10 ite.Motorista,mot.Nome,mot.pessoa,mot.cpfcnpj');
                               DM.qryBusca.Sql.Add('From TB_MDFeIte ite,TB_Transportadora mot');
                               DM.qryBusca.Sql.Add('where ite.Empresa        = :Empresa');
                               DM.qryBusca.Sql.Add('  and RTrim(ite.Modelo)  = RTrim(:Modelo)');
                               DM.qryBusca.Sql.Add('  and RTrim(ite.Serie)   = RTrim(:Serie)');
                               DM.qryBusca.Sql.Add('  and ite.Numero         = :Numero');
                               DM.qryBusca.Sql.Add('  and ite.Motorista      IS NOT NULL');
                               DM.qryBusca.Sql.Add('  and ite.Motorista      > 0');
                               DM.qryBusca.Sql.Add('  and mot.Empresa        = ite.Empresa');
                               DM.qryBusca.Sql.Add('  and mot.Codigo         = ite.Motorista');
                               DM.qryBusca.Sql.Add('Group by ite.Motorista,mot.Nome,mot.Pessoa,mot.CpfCnpj');
                               DM.qryBusca.Sql.Add('Order by ite.Motorista,mot.Nome,mot.Pessoa,mot.CpfCnpj');
                               end;
                             DM.qryBusca.Parameters.ParamByName('Empresa').value := wpar_Empresa;
                             DM.qryBusca.Parameters.ParamByName('Modelo').value  := DM.qryMDFeCabDisponiveis.FieldByName('Modelo').AsString;
                             DM.qryBusca.Parameters.ParamByName('Serie').value   := DM.qryMDFeCabDisponiveis.FieldByName('Serie').AsString;
                             DM.qryBusca.Parameters.ParamByName('Numero').value  := DM.qryMDFeCabDisponiveis.FieldByName('Numero').AsInteger;
                             DM.qryBusca.Open;
                             While not DM.qryBusca.Eof do
                             begin
                               With CONDUTOR.Add do
                               begin
                                 xNome := Trim(Copy(DM.qryBusca.FieldByName('Nome').AsString+space(60),1,60));
                                 CPF   := TrataCpfCnpj(DM.qryBusca.FieldByName('Pessoa').AsString,
                                                       DM.qryBusca.FieldByName('CpfCnpj').AsString);
                               end;
                               DM.qryBusca.Next;
                             end;
                             {--------------------------------------------------------------------------------------------------------------}
                             {condutor - fim                                                                                                }
                             {--------------------------------------------------------------------------------------------------------------}

                             {--------------------------------------------------------------------------------------------------------------}
                             {tpRod/tpCar/UF - inicio                                                                                       }
                             {--------------------------------------------------------------------------------------------------------------}
                             If (DM.qryMDFeCabDisponiveis.FieldByName('vei1_TipoRodado').AsInteger = 0) then
                               begin
                                 tpRod := StrToTpRodado(OK,'06');
                               end
                             else
                               begin
                                 tpRod := StrToTpRodado(OK,FormatFloat('00',DM.qryMDFeCabDisponiveis.FieldByName('vei1_TipoRodado').AsInteger));
                               end;
                             tpCar          := StrToTpCarroceria(OK,FormatFloat('00',DM.qryMDFeCabDisponiveis.FieldByName('vei1_TipoCarroceria').AsInteger));
                             UF             := DM.qryMDFeCabDisponiveis.FieldByName('vei1_UFPlaca').AsString;
                             {--------------------------------------------------------------------------------------------------------------}
                             {tpRod/tpCar/UF - fim                                                                                          }
                             {--------------------------------------------------------------------------------------------------------------}
                           end;
                         end;
                         {--------------------------------------------------------------------------------------------------------------}
                         {veicTracao - fim                                                                                              }
                         {--------------------------------------------------------------------------------------------------------------}

                         {--------------------------------------------------------------------------------------------------------------}
                         {veicReboque - inicio                                                                                          }
                         {--------------------------------------------------------------------------------------------------------------}
                         if DM.qryMDFeCabDisponiveis.FieldByName('vei2_Codigo').AsInteger > 0 then
                         begin
                           With RODO.veicReboque.Add do
                           begin
                             cInt    := FormatFloat('0',DM.qryMDFeCabDisponiveis.FieldByName('vei2_Codigo').AsInteger);
                             placa   := TrataPlaca(DM.qryMDFeCabDisponiveis.FieldByName('vei2_Placa').AsString,8);
                             RENAVAM := DM.qryMDFeCabDisponiveis.FieldByName('vei1_RENAVAN').AsString;
                             While Length(RENAVAM) < 9 do RENAVAM := '0'+RENAVAM;
                             tara  := DM.qryMDFeCabDisponiveis.FieldByName('vei2_Tara').AsInteger;
                             capKG := DM.qryMDFeCabDisponiveis.FieldByName('vei2_capKG').AsInteger;
                             capM3 := DM.qryMDFeCabDisponiveis.FieldByName('vei2_capM3').AsInteger;

                             {--------------------------------------------------------------------------------------------------------------}
                             {prop - inicio                                                                                                 }
                             {--------------------------------------------------------------------------------------------------------------}
                             sCNPJProprietario  := TrataCPFCNPJ(DM.qryMDFeCabDisponiveis.FieldByName('vei2_ProprietarioPessoa').AsString,
                                                                DM.qryMDFeCabDisponiveis.FieldByName('vei2_ProprietarioCpfCnpj').AsString);
                             sRNTRCProprietario := TrataRNTRC(DM.qryMDFeCabDisponiveis.FieldByName('vei2_ProprietarioRNTRC').AsString,8);
                             If  (sCNPJProprietario  <> sCNPJEmitente)
                             and (sRNTRCProprietario <> sRNTRCEmitente) then
                             begin
                               With prop do
                               begin
                                 CNPJCPF := sCNPJProprietario;
                                 RNTRC   := sRNTRCProprietario;
                                 xNome   := Trim(Copy(DM.qryMDFeCabDisponiveis.FieldByName('vei2_ProprietarioNome').AsString+space(60),1,60));
                                 IE      := TrataInscricao(DM.qryMDFeCabDisponiveis.FieldByName('vei2_ProprietarioIE').AsString);
                                 UF      := DM.qryMDFeCabDisponiveis.FieldByName('vei2_ProprietarioUF').AsString;
                                 tpProp  := StrToTpProp(OK,'1');//TpcteProp = (0=tpTACAgregado, 1=tpTACIndependente, 2=tpOutros);
                               end;
                             end;
                             {--------------------------------------------------------------------------------------------------------------}
                             {prop - fim                                                                                                    }
                             {--------------------------------------------------------------------------------------------------------------}

                             {--------------------------------------------------------------------------------------------------------------}
                             {tpCar/UF - inicio                                                                                             }
                             {--------------------------------------------------------------------------------------------------------------}
                             tpCar       := StrToTpCarroceria(OK,FormatFloat('00',DM.qryMDFeCabDisponiveis.FieldByName('vei2_TipoCarroceria').AsInteger));
                             UF          := DM.qryMDFeCabDisponiveis.FieldByName('vei2_UFPlaca').AsString;
                             //codAgPorto  := '';
                             {--------------------------------------------------------------------------------------------------------------}
                             {tpCar/UF - fim                                                                                                }
                             {--------------------------------------------------------------------------------------------------------------}
                           end;
                         end;
                         {--------------------------------------------------------------------------------------------------------------}
                         {veicReboque - fim                                                                                             }
                         {--------------------------------------------------------------------------------------------------------------}
                       end;

 

Link para o comentário
Compartilhar em outros sites

  • Moderadores
1 hora atrás, Juliomar Marchetti disse:

sempre anexe como arquivo. fica grande e poluí o fórum. Obrigado

Ok Juliomar, mas a última vez que postei um trecho de codigo como arquivo, me solicitaram para postar na propria mensagem entre <>. Você, como moderador, pode excluir a resposta que dei ao tópico para que possa anexar como arquivo?

Link para o comentário
Compartilhar em outros sites

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

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.