Árvore de páginas

Versões comparadas

Chave

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

...

Totvs custom tabs box
tabsPre-Requisitos,Procedimiento
idsPre-Requisitos,Procedimiento
Totvs custom tabs box items
defaultyes
referenciaPre-Requisitos

1. Crear y compilar el punto de entrada M486PDFCOLM486OWSCOL.

2. Si se considera necesario, desde el configurador de Protheus (SIGACFG | Base de Datos | Base de Datos | Diccionario de Datos), el usuario debe crear un campo personalizado en la tabla de clientes (SA1 o AI0) para registrar las cuentas de correo para el envío de la factura electrónica.

3. Registrar las cuentas de correo necesarias en el campo destinado para este propósito en la tabla de clientes (SIGAFAT | Actualizaciones | Archivos | Clientes).

4. Registrar una factura de venta (SIGAFAT | Actualizaciones | Facturación | Facturaciones).

Totvs custom tabs box items
defaultno
referenciaProcedimiento

1. Realizar la transmisión de la factura de venta (SIGAFAT | Actualizaciones | Facturación | Factura Electrónica).

2. Verifique que la transmisión se realice correctamente.

...

Registro de cuentas de correo, en el cliente seleccionado, para envío de la factura electrónica:


Resultado de transmisión de factura de venta al servicio web de The Factory HKA:

...

Correo recibido en la cuenta 2:


Ejemplo del punto de

...

entrada para el envío de correo a diferentes destinatarios:

Bloco de código
languagedelphi
firstline1
titleM486OWSCOL
linenumberstrue
#include "protheus.ch"

User Function M486OWSCOL()

	Local cSerieDoc := PARAMIXB[1] //Serie
	Local cNumDoc := PARAMIXB[2] //Numero de Documento
	Local cCodCli := PARAMIXB[3] //Codigo de Cliente
	Local cCodLoj := PARAMIXB[4] //Codigo de la Tienda
	Local oXML := PARAMIXB[5] //Objeto del XML
	Local nOpc := PARAMIXB[6] //Nivel: 1-Encabezado, 2=detalle
	Local oWS := PARAMIXB[7] //Objeto de web services
	Local aEmail := {}
	Local oWSDest := Nil
	Local oWSCta := Nil
	Local nX := 0

	If nOpc == 1 //Encabezado

		// Posicionar cliente
		SA1->(dbSetOrder(1))

		If SA1->(msSeek(xFilial("SA1")+cCodCli+cCodLoj))

			// Como ejemplo se usa el campo A1_PRF_OBS (Comentarios de perfil)
			If !Empty(SA1->A1_PRF_OBS)

				// Las cuentas de correo están separadas por coma
				aEmail := StrTokArr(SA1->A1_PRF_OBS, ",")

				// Indicar Sí notificar
				oWS:oWSCliente:cnotificar := "SI"

				// Crea objeto destinatario, el medio de entrega es 0=email
				oWSDest := Service_Destinatario():NEW()
				oWSDest:ccanalDeEntrega := "0"

				// Crea arreglo de las cuentas de correo
				oWSDest:oWSemail := Service_ArrayOfstring():NEW()

				For nX := 1 to Len(aEmail)

					aAdd(oWSDest:oWSEmail:cstring, aEmail[nX])

				Next nX

				// Agrega destinatario al objeto principal
				aAdd(oWS:oWSCliente:oWSDestinatario:oWSDestinatario, oWSDest)

			EndIf

		EndIf

	EndIf

Return Nil



Card documentos
InformacaoLa factura electrónica es enviada a las cuentas de correo especificadas siempre y cuando la transmisión haya sido exista.
Titulo¡IMPORTANTE!


05. ASUNTOS RELACIONADOS

Para más información sobre el proceso de factura electrónica, consulte el documento de referencia: 

DT_Facturacion_Electronica_Validacion_Previa_COL


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>