Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

01. 

...

DATOS GENERALES

SolucaoCrossLinha ProdutoLinha

Línea Protheus

segmentos_totvs

Backoffice

FunçãoAbrangênciasVersõesCompatível Países OperacionaisCompatível com as Bases de DadosNível AcessoNível Acesso
Produto:
Solucoes_totvs_cross

Producto:

TOTVS Backoffice

Línea de

producto:

Linhas_totvs
SegmentoDistribuição
RegionConstrução Projetos
Linha

Segmento:

Segmento

Módulo:

SIGAFAT -

Faturamento

Facturación

Función:

MAPVLNFS -

Geração

Generación de

Documento

documento de

Saída

salida a partir de ítems de

Itens do

Pedido(s) de

Venda

venta

Alcances:

Microsiga Protheus 12

Versiones:

Microsiga Protheus 12

Compatible países:

Todos

Sistemas

operativos:

Todos

Compatible con las bases de datos:

Todos

Nivel de

acceso:

Nivel 1 (

Acceso Clientes)

Idiomas:

Todos

02. 

...

DESCRIPCIÓN

Função Función utilizada para a geração do Documento Fiscal de Saída la generación del Documento fiscal de salida a partir de itens do ítems del Pedido de Vendaventa.

Aviso
titleIMPORTANTE

A função MaPvlNfs não é responsável por validar os bloqueios dos itens La función MaPvlNfs no es responsable por validar los bloqueos de los ítems liberados (SC9). Desta forma, a customização se torna responsável pela verificação dos bloqueios de Estoque De esta manera, la personalización se vuelve responsable por la verificación de los bloqueos de Stock (C9_BLEST) e y Crédito (C9_BLCRED) conforme regra de negócio implementada pelo desenvolvedor, de acuerdo con la regla de negocio implementada por el desarrollador.

03.

...

SINTAXIS

MaPvlNfs( < aPvlNfs >, < cSerieNFS >, [ lMostraCtb ], [ lAglutCtb ], [ lCtbOnLine ], [ lCtbCusto ], [ lReajuste ], [ nCalAcrs ], [ nArredPrcLis ], [ lAtuSA7 ],  [ lECF ], [ cEmbExp ], [ bAtuFin ], [ bAtuPGerNF ], [ bAtuPvl ], [ bFatSE1 ], [ dDataMoe ], [ lJunta ] )

04. 

...

PARÁMETROS

NomeDescriçãoDefaultObrigatórioReferência com os itens a serem geradosSimSimNãoNão OnLineNão Custo OnLineNão preço na Nota FiscalNão Acréscimo FinanceiroNão ArredondamentoNãoNãoCupom FiscalNãoCaractere do Embarque ExportaçãoNãoBloco CódigoBloco Código de atualização dos títulos financeirosNãoBloco CódigoBloco Código para complemento de atualização dos dados após a geração da Nota FiscalNãoBloco CódigoBloco de Código de atualização do Pedido de Venda antes da geração da Nota FiscalNãoBloco CódigoBloco Código se o do Título a Receber será gravado no quando o parâmetro estiver com o NãoNãoAglutina Pedido IguaisNão

Nombre

Tipo

Descripción

Estándar

Obligatorio

Referencia

aPvlNfs

Array

Array

con los ítems que se generarán



cSerieNFS

CaractereSérie da Nota Fiscal

Carácter

Serie de la factura



lMostraCtb

Lógico

Mostra Lançamento Contábil

Muestra asiento contable


No


lAglutCtb

Lógico

Aglutina Lançamento Contábil

Agrupa asiento contable


No


lCtbOnLine

Lógico

Contabiliza

on-

line


No


lCtbCusto

Lógico

Contabiliza

costo on-

line


No


lReajuste

Lógico

Reajuste de

preció en la factura


No


nCalAcrs

Numérico

Tipo de

aumento financiero


No


nArredPrcLis

Numérico

Tipo de

redondeo


No


lAtuSA7

Lógico

Atualiza Amarração Cliente x Produto

Actualiza vínculo Cliente vs. Producto


No


lECF

Lógico

Comprobante fiscal


No


cEmbExp

Carácter

Número

de embarque de

exportación


No


bAtuFin

Bloque de

código

Bloque de

código para complemento

de actualización de los títulos financieros


No


bAtuPGerNF

Bloque de

código

Bloque de

código para complemento de actualización de los datos después de la generación de la factura

{||}

No


bAtuPvl

Bloque de

código

Bloque de código de actualización del Pedido de venta antes de la generación de la factura

{||}

No


bFatSE1

Bloque de

código

Bloque de

código para indicar

si el valor

del Título por cobrar se grabará en el campo F2_VALFAT

cuando el parámetro MV_TMSMFAT

esté con el valor igual a "2".

{|| .T. }

No


dDataMoe

DataData da cotação para conversão dos valores da Moeda do Pedido de Venda para a Moeda FortedDatabase

Fecha

Fecha de la cotización para la conversión de los valores de la moneda del Pedido de venta a la moneda fuerte

dDatabase

No


lJunta

Lógico

Agrupa pedidos iguales

.F.

No


05.

...

DEVOLUCIÓN

cNumNFS - Tipo: Caractere - Número do Documento Fiscal de Saída

06. 

...

EJEMPLO

Bloco de código
languagejs
linenumberstrue
#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"

User Function MyPVLNFS()

    Local aPvlDocS := {}
    Local nPrcVen := 0
    Local cC5Num  := "pcpAO9"
    Local cSerie  := "001"
    Local cEmbExp := ""
    Local cDoc    := ""

    PREPARE ENVIRONMENT EMPRESA "T1" FILIALSUCURSAL "D MG 01 " MODULOMÓDULO "FAT" TABLES "SF2","SD2","SA1","SA2","SB1","SB2","SF4","SED","SE1"

    SC5->(DbSetOrder(1))
    SC5->(MsSeek(xFilial("SC5")+cC5Num))

    SC6->(dbSetOrder(1))
    SC6->(MsSeek(xFilial("SC6")+SC5->C5_NUM))

    //ÉEs necessárionecesario carregarcargar oel grupo de perguntaspreguntas MT460A, sesi nãono seráse executadoejecuta comcon oslos valores defaultestándar.
    PerguntePregunta("MT460A",.F.)

    // ObterObtener oslos dadosdatos de cada itemítem dodel pedido de vendasventas liberado para gerargenerar oel Documento de Saídasalida
    While SC6->(!Eof() .And. C6_FILIAL == xFilial("SC6")) .And. SC6->C6_NUM == SC5->C5_NUM

        SC9->(DbSetOrder(1))
        SC9->(MsSeek(xFilial("SC9")+SC6->(C6_NUM+C6_ITEM))) //FILIALSUCURSAL+NUMERONÚMERO+ITEMÍTEM

        SE4->(DbSetOrder(1))
        SE4->(MsSeek(xFilial("SE4")+SC5->C5_CONDPAG) )  //FILIALSUCURSAL+CONDICAOCONDICIÓN PAGTOPAGO

        SB1->(DbSetOrder(1))
        SB1->(MsSeek(xFilial("SB1")+SC6->C6_PRODUTO))    //FILIALSUCURSAL+PRODUTOPRODUCTO

        SB2->(DbSetOrder(1))
        SB2->(MsSeek(xFilial("SB2")+SC6->(C6_PRODUTO+C6_LOCAL))) //FILIALSUCURSAL+PRODUTOPRODUCTO+LOCAL

        SF4->(DbSetOrder(1))
        SF4->(MsSeek(xFilial("SF4")+SC6->C6_TES))   //FILIALSUCURSAL+TES

        nPrcVen := SC9->C9_PRCVEN
        If ( SC5->C5_MOEDA <> 1 )
            nPrcVen := xMoeda(nPrcVen,SC5->C5_MOEDA,1,dDataBase)
        EndIf

		If AllTrim(SC9->C9_BLEST) == "" .And. AllTrim(SC9->C9_BLCRED) == ""
        	AAdd(aPvlDocS,{ SC9->C9_PEDIDO,;
                        	SC9->C9_ITEM,;
                        	SC9->C9_SEQUEN,;
                        	SC9->C9_QTDLIB,;
                        	nPrcVen,;
                        	SC9->C9_PRODUTO,;
                        	.F.,;
                        	SC9->(RecNo()),;
                        	SC5->(RecNo()),;
                        	SC6->(RecNo()),;
                        	SE4->(RecNo()),;
                        	SB1->(RecNo()),;
                        	SB2->(RecNo()),;
                        	SF4->(RecNo())})
		EndIf

        SC6->(DbSkip())
    EndDo

	SetFunName("MATA461")
    
    cDoc := MaPvlNfs(  /*aPvlNfs*/         aPvlDocS,;  // 01 - Array comcon oslos itensítems aque seremse geradosgenerarán
                       /*cSerieNFS*/       cSerie,;    // 02 - Serie dade Notala Fiscalfactura
                       /*lMostraCtb*/      .F.,;       // 03 - MostraMuestra Lançamentoasiento Contábilcontable
                       /*lAglutCtb*/       .F.,;       // 04 - AglutinaAgrupa Lançamentoasiento Contábilcontable
                       /*lCtbOnLine*/      .F.,;       // 05 - Contabiliza Onon-Lineline
                       /*lCtbCusto*/       .T.,;       // 06 - Contabiliza Custocosto Onon-Lineline
                       /*lReajuste*/       .F.,;       // 07 - Reajuste de preçoprecio naen Notala Fiscalfactura
                       /*nCalAcrs*/        0,;         // 08 - Tipo de Acréscimoaumento Financeirofinanciero
                       /*nArredPrcLis*/    0,;         // 09 - Tipo de Arredondamentoredondeo
                       /*lAtuSA7*/         .T.,;       // 10 - AtualizaActualiza Amarraçãovínculo Cliente xvs. ProdutoProducto
                       /*lECF*/            .F.,;       // 11 - CupomComprobante Fiscalfiscal
                       /*cEmbExp*/         cEmbExp,;   // 12 - Número dodel Embarqueembarque de Exportaçãoexportación
                       /*bAtuFin*/         {||},;      // 13 - BlocoBloque de Códigocódigo para complemento de atualizaçãoactualización de doslos títulos financeirosfinancieros
                       /*bAtuPGerNF*/      {||},;      // 14 - BlocoBloque de Códigocódigo para complemento de atualizaçãoactualización dosde dadoslos apósdatos a geração da Nota Fiscaldespués de la generación de la factura
                       /*bAtuPvl*/         {||},;      // 15 - BlocoBloque de Códigocódigo de atualizaçãoactualización dodel Pedido de Vendaventa antes de dala geraçãogeneración dade Notala Fiscalfactura
                       /*bFatSE1*/         {|| .T. },; // 16 - BlocoBloque de Códigocódigo para indicar sesi oel valor del doTítulo Titulopor acobrar Receberse serágrabará gravadoen noel campo F2_VALFAT quandocuando oel parâmetroparámetro MV_TMSMFAT estiveresté comcon oel valor igual a "2".
                       /*dDataMoe*/        dDatabase,; // 17 - Fecha Datade dala cotaçãocotización para conversãoconversión de doslos valores de dala MoedaMoneda dodel Pedido de Vendaventa paraa ala MoedaMoneda Fortefuerte
                       /*lJunta*/          .F.)        // 18 - AglutinaAgrupa Pedidopedidos Iguaisiguales
    
    If !Empty(cDoc)
        Conout("Documento de Saídasalida: " + cSerie + "-" + cDoc + ", geradogenerado com sucesso!!!con éxito.")
    EndIf

    RESET ENVIRONMENT

Return .T.

07.

...

OTRAS INFORMACIONES

Para

...

la Generación del Título y Formulario GNRE, la pantalla de preguntas de la rutina Generación de documento de salida (MATA460A) debe estar cumplimentada como "" en las preguntas de Generación de Título y de Formulario de ICMS Propio, y el parámetro MV_GNRENF debe estar cumplimentado con el contenido  .T. (Verdadero), cuando se utilice la función MaPvlNfs() para que la pantalla de la GNRE/DIFAL no se ejecute.

Aviso
titleImportante

O função MaPvlNfs gera um La función MaPvlNfs genera un único Documento de Saída com todos os itens passados no salida con todos los ítems informados en el array aPvlNfs, sendo assim, caso seja necessário gerar mais de um documento de saída, a função deverá ser chamada mais de uma vez com o array aPvlNfs contendo os itens referentes a cada nota a ser geradade esta manera, si fuera necesario generar más de un documento de salida, la función debe llamarse más de una vez con el array aPvlNfs incluyendo los ítems referentes a cada factura que se generará

08. 

...

ASUNTOS RELACIONADOS


Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>