Herramientas de usuario

Herramientas del sitio


usu:smartpdf:envio_inmediato

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
usu:smartpdf:envio_inmediato [2018/11/19 18:17] – creado stefanusu:smartpdf:envio_inmediato [2022/10/26 12:00] (actual) – [Adaptación base de datos] stefan
Línea 8: Línea 8:
  
 ===== Lista de destinatarios ===== ===== Lista de destinatarios =====
-Hay que definir una lista de destinatarios **estática**. +Hay que definir una lista de destinatarios. Lo más fácil es usar una lista **estática** activando la opción correspondiente
-{{ :usu:smartpdf:spdflistdestestat2.png?600 |Lista estática}}+{{ :usu:smartpdf:spdflistadestestat.jpg?600 |Lista estática}} 
 +/*{{ :usu:smartpdf:spdflistdestestat2.png?600 |Lista estática}}*/
 No hace falta añadir ningún registro a esta lista, los registro se añaden automáticamente, por ejemplo al confirmar un contrato. No hace falta añadir ningún registro a esta lista, los registro se añaden automáticamente, por ejemplo al confirmar un contrato.
  
 Información avanzada:\\ Información avanzada:\\
-Cada registro que se añade a esta lista tiene que tener asignado un //Tipo tarea// en el campo correspondiente. El programa de servidor //SmartServicesPdf// escoge todos los registros de esta lista, crea y envía el documento de este tipo, y marca el registro como enviado en el campo //Fecha enviado//.+Cada registro que se añade a esta lista tiene que tener asignado un //Tipo tarea// en el campo correspondiente. El programa de servidor //SmartServicesPdf// escoge todos los registros de esta lista y del tipo de tarea, crea y envía el documento, y marca el registro como enviado en el campo //Fecha enviado//.
  
 +La ventaja de una lista estática es que sirve para varios tipos de tareas, porque es genérica. Para cada documento a enviar se pueden poner hasta 4 códigos, el código y razón social de un tercero, y lógicamente el correo el. de destino.
 +
 +Si estos campos no son suficientes, por ejemplo porque queremos usar la dirección del cliente en la plantilla del email, entonces tenemos que definir una **lista de destinatario dinámica**.
 +
 +Para el envío inmediato, la instrucción de selección siempre tiene que basarse en
 +  select ID, CORREO_E from SS_LISTA_DEST_LIN 
 +  where COD_LIST = 'El código de la lista'
 +  and TIPO_TAREA = 'El código del tipo de la tarea'
 +  and FECAH_ENVIADO is null
 +  order by ID
 +Un ejemplo sería:
 +<code>
 +SELECT A.ID, A.CORREO_E AS EMAIL_DEST,
 +B.COD_OFERTA, B.RAZON_SOCIAL, B.DESC_OBRA, B.ATENCION_DE,
 +C.DENOMINACION AS DENOMINACION_EMP, C.TELEFONO AS TELEFONO_EMP, C.CORREO_E AS EMAIL_EMP
 +FROM SS_LISTA_DEST_LIN A
 +JOIN CAB_OFERTA_VENTA B ON A.VALOR_1 = B.COD_OFERTA
 +LEFT JOIN TERCERO C ON C.TIPO = B.TIPO_TERCERO_EMP AND C.CODIGO = B.COD_TERCERO_EMP
 +WHERE A.COD_LISTA = 'ENV_INMED'
 +AND A.TIPO_TAREA = 'OV'
 +AND A.FECHA_ENVIADO IS NULL
 +ORDER BY A.ID
 +</code>
 +
 +{{ :usu:smartpdf:spdflistadestdinsel.jpg?600 |Lista dest. dinámica selección}}
 +
 +Para las listas dinámicas también hay que rellenar la pestaña de actualización como se ve en la siguiente imagen. La instrucción de esta pestaña se ejecuta después del envío de cada registro sacado con la selección de la lista de destinatarios.
 +{{ :usu:smartpdf:spdflistadestdinact.jpg?600 |Lista dest. dinámica actualización}}
 +
 +**Hay que tomar en cuenta que normalmente es necesario crear una lista de destinatarios dinámica por cada tipo de tarea que queremos enviar**.
 ===== Lote ===== ===== Lote =====
 Hay que crear un lote para el envío inmediato de documentos. Hay que crear un lote para el envío inmediato de documentos.
-{{ :usu:smartpdf:spdfloteenvioinmediato.png?600 |Lote}} +{{ :usu:smartpdf:spdfloteenvioinmediato.jpg?600 |Lote}} 
-Este lote, en la pestaña //Planificación//, tiene que ejecutarse cada 2 minutos.+ 
 +Este lote, en el formulario de //Planificación//, que se abre con ''Mayús.+F6'' desde el campo ''Cód. palnificación'', tiene que ejecutarse cada 2 minutos. 
 +{{ :usu:smartpdf:spdfplanenvioinmediato.jpg?600 |Planificación}}
  
 Para cada tipo de documento que queremos enviar, añadimos una tarea nueva, y luego editamos estas tareas. Para cada tipo de documento que queremos enviar, añadimos una tarea nueva, y luego editamos estas tareas.
  
 ===== Tareas ===== ===== Tareas =====
-{{ :usu:smartpdf:spdftareageneralenvioinmediato.png?600 |Tarea}}+{{ :usu:smartpdf:spdftareageneralenvioinmediato.jpg?600 |Tarea}}
 En cada tarea hay que poner los siguientes datos: En cada tarea hay que poner los siguientes datos:
   - //Cód. lista destinatarios//: la lista de destinatarios definida anteriormente.   - //Cód. lista destinatarios//: la lista de destinatarios definida anteriormente.
Línea 29: Línea 62:
   - //Parar lote al error//: desactivar.   - //Parar lote al error//: desactivar.
   - //Suspender lote al error//: desactivar.   - //Suspender lote al error//: desactivar.
 +
 +**En cualquier momento puede haber solo una tarea de cada tipo de tarea en un lote confirmado.**
  
 La pestaña //E-Mail// se configura igual que cualquier lote normal, según las necesidades de la empresa. La pestaña //E-Mail// se configura igual que cualquier lote normal, según las necesidades de la empresa.
  
-**En cualquier momento puede haber solo una tarea de cada tipo de tarea en un lote confirmado.**+{{ :usu:smartpdf:spdftareaemailcuerpoed.jpg?600 |Email cuerpo}} 
 + 
 +Recuerda que se pueden usar los campos de la lista de destinatarios para asignarlos a los parámetros de la plantilla. 
 + 
 +{{ :usu:smartpdf:spdftareaemailparamsed.jpg?600 |Email parámetros}}
  
 ===== Documentos ===== ===== Documentos =====
-{{ :usu:smartpdf:spdfdocenvioinmediato.png?600 |Documentos}}+{{ :usu:smartpdf:spdfdocenvioinmediato.jpg?600 |Documentos}}
 Los documentos se definen de la misma manera como en cualquier lote normal, y como explica la guía de iniciación. Los documentos se definen de la misma manera como en cualquier lote normal, y como explica la guía de iniciación.
  
-Normalmente el documento se va a basar en el procedimiento de impresión del documento de SmartOffice, por ejemplo ''IMPRES_OFERTA_VENTA'', y los parámetros serán los valores de la lista estática (''VALOR_1'', ''VALOR_2'', etc.).+Normalmente el documento se va a basar en el procedimiento de impresión del documento de SmartOffice, por ejemplo ''IMPRES_OFERTA_VENTA'', y los parámetros serán los valores de la lista estática (''VALOR_1'', ''VALOR_2'', etc.). Si se ha usado una lista dinámica, lógicamente habrá que usar los campos que devuelve su selección. Ver ejemplo en la imagen arriba.
  
 ===== Adaptación base de datos ===== ===== Adaptación base de datos =====
Línea 50: Línea 89:
 |P_COD_TERCERO |El código de tercero principal del documento. |No | |P_COD_TERCERO |El código de tercero principal del documento. |No |
 |P_CORREO_E |El destinatario del envío. |Si | |P_CORREO_E |El destinatario del envío. |Si |
-|P_VALOR_1 |El código de la primera clave principal del documento. Se levanta una excepción si la longitud excede la longitud definida en SS_TIPO_TAREA para el tipo actual. |No |+|P_VALOR_1 |El código de la primera clave principal del documento. Se levanta una excepción si la longitud excede la longitud definida en SS_TIPO_TAREA para el tipo actual. Para las ofertas de venta sería el número de la oferta, por ejemplo. |No |
 |P_VALOR_2 |(igual que P_VALOR1 para la segunda clave, si el documento la tiene) |No | |P_VALOR_2 |(igual que P_VALOR1 para la segunda clave, si el documento la tiene) |No |
 |P_VALOR_3 |(igual que P_VALOR1 para la tercera clave, si el documento la tiene) |No | |P_VALOR_3 |(igual que P_VALOR1 para la tercera clave, si el documento la tiene) |No |
Línea 56: Línea 95:
 |P_EX_ON_ERROR |Si ponemos el valor ''N'' y hay algún error, no se levanta ninguna excepción, pero solo se envía un mensaje al usuario.|No | |P_EX_ON_ERROR |Si ponemos el valor ''N'' y hay algún error, no se levanta ninguna excepción, pero solo se envía un mensaje al usuario.|No |
  
 +También es posible llamar el procedimiento directamente desde el formulario, por ejemplo al dar en un botón //Enviar//, como sucede en la unidad ''UnitOfertasClientes.pas''.
usu/smartpdf/envio_inmediato.1542647873.txt.gz · Última modificación: 2018/11/19 18:17 por stefan

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki