User Function EXECDT4()
Local aCabDT4 := {}
Local aItemDVF := {}
Private lMsErroAuto := .F.
Private lMsHelpAuto := .T.
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
// Não e necessário passar os valores de filial.
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
// Deve se informar todos os campos obrigatórios na
// mesma ordem com que e feito em uma cotação manual
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
// Os campos (*****) sao alimentados automaticamente na
// inclusão manual, porem aqui devem ser passados no array
//-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
// Busca Número da Cotação
dbSelectArea("DT4")
dbSetorder(1)
RegToMemory("DT4",.T.,.F.)
_cNum:= GetSXENum("DT4","DT4_NUMCOT")
ConfirmSX8()
// Capa da Cotação
aCabDT4 := {{"DT4_FILORI" ,"01" , Nil},; //Dados da Empresa - filial de origem
{"DT4_NUMCOT" ,_cNum , Nil},; //Dados da Empresa - numero da cotacao
{"DT4_DATCOT" ,STOD("20120620") , Nil},; //Dados da Empresa - Data da Cotacao
{"DT4_HORCOT" ,"1600" , Nil},; //Dados da Empresa - Hora da Cotacao
{"DT4_DDD" ,"011" , Nil},; //Dados da Empresa - DDD do solicitante
{"DT4_TEL" ,"41412222" , Nil},; //Dados da Empresa - Telefone do solicitante
{"DT4_NOMSOL" ,"SAO PAULO" , Nil},; //Dados da Empresa - Nome Solicitante (*****)
{"DT4_PRZVAL" ,dDataBase+10 , Nil},; //Dados da Empresa - Prazo de Validade
{"DT4_TIPFRE" ,"1" , Nil},; //Dados da Empresa - Tipo de Frete (1-CIF / 2-FOB)
{"DT4_USER" ,"00000" , Nil},; //Dados da Empresa - Usuario
{"DT4_PESSOA" ,"1" , Nil},; //Dados da Empresa - Pessoa (1 - Fisica/ 2 - Juridica)
{"DT4_CONTRI" ,"1" , Nil},; //Dados da Empresa -
{"DT4_SELORI" ,"1" , Nil},; //Servico - Regiao de origem 1=Transportadora/2=Cliente Remetente/3=Local Coleta.
{"DT4_CDRORI" ,"SP0001" , Nil},; //Servico - Codigo da regiao de origem
{"DT4_REGORI" ,"SAO PAULO" , Nil},; //Servico - Nome Regiao de Origemm(*****)
{"DT4_CDRDES" ,"RJ0001" , Nil},; //Servico - Codigo da regiao de destino
{"DT4_REGDES" ,"RIO DE JANEIRO" , Nil},; //Servico - Nome da Regiao de Destino(*****)
{"DT4_SERTMS" ,"3" , Nil},; //Servico - Servico de transporte 1= Coleta / 2=Transporte / 3=Entrega.
{"DT4_DESSVT" ,"ENTREGA" , Nil},; //Servico - Descricao Servico Tansporte(*****)
{"DT4_TIPTRA" ,"1" , Nil},; //Servico - Tipo de Transporte 1=Rodoviario / 2=Aereo / 3=Fluvial.
{"DT4_DESDTP" ,"RODOVIARIO" , Nil},; //Servico - Descricao Tipo Tansporte
{"DT4_SERVIC" ,"014" , Nil},; //Servico - Servico
{"DT4_DESSER" ,"SNE ENTREGA" , Nil},; //Servico - Descricao do Servico
{"DT4_TIPNFC" ,"0" , Nil},; //Servico - Tipo NFC
{"DT4_KM" ,10 , Nil},; //Servico - KM
{"DT4_INCISS" ,"1" , Nil},; //Servico - ISS no Preco
{"DT4_DISTIV" ,"2" , Nil},; //Servico - Dis Ida/Volt
{"DT4_CLIREM" ,"000001" , Nil},; //Aprovacao - Cliente Remetente
{"DT4_LOJREM" ,"01" , Nil},; //Aprovacao - Loja Remetente
{"DT4_NOMREM" ,"SAO PAULO" , Nil},; //Aprovacao - Nome Remetente (*****)
{"DT4_CLIDES" ,"000002" , Nil},; //Aprovacao - Cliente Destinatario
{"DT4_LOJDES" ,"01" , Nil},; //Aprovacao - Loja Destinatario
{"DT4_NOMDES" ,"RIO DE JANEIRO" , Nil},; //Aprovacao - Nome Destinatario (*****)
{"DT4_CLIDEV" ,"000001" , Nil},; //Aprovacao - Cliente Remetente
{"DT4_LOJDEV" ,"01" , Nil},; //Aprovacao - Loja Remetente
{"DT4_NOMDEV" ,"SAO PAULO" , Nil},; //Aprovacao - Nome Remetente (*****)
{"DT4_MOEDA" ,1 , Nil}} //Outros - Moeda
// Item da Cotação
Aadd(aItemDVF,{{"DVF_FILORI","01" , Nil},; //Filial de Origem
{"DVF_NUMCOT" ,_cNum , Nil},; //Numero da Cotacao
{"DVF_ITEM" ,"01" , Nil},; //Sequencia do Item
{"DVF_CODPRO" ,"000001" , Nil},; //Codigo do Produto
{"DVF_DESPRO" ,"PRODUTO 000001" , Nil},; //Descricao do Produto (*****)
{"DVF_CODEMB" ,"CX" , Nil},; //Codigo da Embalagem
{"DVF_DESEMB" ,"CAIXA" , Nil},; //Descricao da Embalagem
{"DVF_QTDVOL" ,10 , Nil},; //Quantidade de Volumes.
{"DVF_PESO" ,100 , Nil},; //Peso
{"DVF_VALMER" ,1000 , Nil}}) //Valor da Mercadoria
// Chama a rotina TMSA040
MsExecAuto({|x,y,z| TMSA040(x,y,z)}, aCabDT4, aitemDVF, 3)
// Retorna Resultado do Processo
If lMsErroAuto
MostraErro()
Else
MsgInfo("Cotação de Frete " + _cNum + " gravada com sucesso!")
EndIf
Return