Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
Portuguese | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Função: MATA116 - Programa de digitação de Nota Fiscal de conhecimento de Frete
Descrição: Esta rotina facilita a digitação dos conhecimentos de frete. Programa Fonte: MATA116.PRW Sintaxe: MATA116 - Programa de digitação de Nota Fiscal de conhecimento de Frete ( [ PARAMIXB1 ] [ PARAMIXB2 ] ) --> nil Retorno:
Observações As condições mais frequentes são para “FOB” - o transporte do fornecedor até o cliente não está incluso no preço ou “CIF” -, apenas está incluso o valor da entrega. A nota de conhecimento de frete é emitida quando o transporte é feito por uma transportadora do tipo “FOB”. São efetuadas diversas entregas IMPORTANTE: O Exemplo abaixo deve ser adaptado conforme a necessidade do cliente, com informações válidas como: Fornecedor, TES, Produto, Condição de Pagamento, Valor da NF de Conhecimento de Frete, e as Notas Fiscais que participam do rateio de frete) Exemplos #INCLUDE "RWMAKE.CH" #INCLUDE "TBICONN.CH" // BIBLIOTECA #include "Protheus.ch"User Function r_mata116()Local aCabec := {}Local aItens := {}Local aLinha := {}Local nX := 0Local nY := 0Local lOk := .T.Private lMsErroAuto := .F.Private lMsHelpAuto := .T.//------------------------//| Abertura do ambiente |//------------------------PREPARE ENVIRONMENT EMPRESA "99" FILIAL "01" MODULO "COM" TABLES "SB1","SD1","SF1"//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//| Verificacao do ambiente para teste |//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ//-- Verifica informacoes de produtodbSelectArea("SB1")dbSetOrder(1)If !SB1->(MsSeek(xFilial("SB1")+"1")) lOk := .F. ConOut("Cadastrar produto: 1")EndIf//-- Verifica informacoes da TESdbSelectArea("SF4")dbSetOrder(1)If !SF4->(MsSeek(xFilial("SF4")+"100")) lOk := .F. ConOut("Cadastrar TES: 100")EndIf//-- Verifica informacoes da condicao de pagamentodbSelectArea("SE4")dbSetOrder(1)If !SE4->(MsSeek(xFilial("SE4")+"1")) lOk := .F. ConOut("Cadastrar condicao de pagamento: 1")EndIf//-- Verifica fornecedordbSelectArea("SA2")dbSetOrder(1)If !SA2->(MsSeek(xFilial("SA2")+"1")) lOk := .F. ConOut("Cadastrar fornecedor: 1")EndIfIf lOk //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //| Carrega ate 3 documentos de origem - Fornecedor 000001 | //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ dbSelectArea("SF1") dbSetOrder(1) MsSeek(xFilial("SF1")) While !EOF() IF ((SF1->F1_FORNECE+SF1->F1_LOJA) =="1 01") if nX<3 aadd(aItens,{{"PRIMARYKEY",SubStr(&(IndexKey()),3)}}) else exit Endif nX++ EndIf dbskip() EndDo IF nX >0 //ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ //| Teste de Inclusao | //ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ aadd(aCabec,{"",dDataBase-90}) //Data Inicial aadd(aCabec,{"",dDataBase}) //Data Final aadd(aCabec,{"",2}) //2-Inclusao;1=Exclusao aadd(aCabec,{"","1 "}) //Fornecedor do documento de Origem aadd(aCabec,{"","01"}) //Loja de origem aadd(aCabec,{"",1}) //Tipo da nota de origem: 1=Normal;2=Devol/Benef aadd(aCabec,{"",2}) //1=Aglutina;2=Nao aglutina aadd(aCabec,{"F1_EST",""}) aadd(aCabec,{"",1000}) //Valor do conhecimento aadd(aCabec,{"F1_FORMUL",1}) aadd(aCabec,{"F1_DOC","000043"}) //..Numero da NF de Conhecimento de Frete aadd(aCabec,{"F1_SERIE","CF "}) aadd(aCabec,{"F1_FORNECE","1 "}) aadd(aCabec,{"F1_LOJA","01"}) aadd(aCabec,{"","100"}) //TES aadd(aCabec,{"F1_BASERET",0}) aadd(aCabec,{"F1_ICMRET",0}) aadd(aCabec,{"F1_COND","1"}) aadd(aCabec,{"F1_EMISSAO",dDataBase}) aadd(aCabec,{"F1_ESPECIE","NF"}) aadd(aCabec,{"E2_NATUREZ",""}) aadd(acabec,{"F1_DESPESA",10}) aadd(acabec,{"F1_DESCONTO",20}) If Len(aItens)>0 MATA116(aCabec,aItens) EndIf If lMsErroAuto MostraErro() Alert("Erro!") Else Alert("Ok!") Endif EndIf EndIfReturn(.T.) Parâmetros:
|