Usted está aquí:
Convertir automatizaciones en asíncronas para ejecuciones por lotes de facturas
Identifique flujos activos y desencadenadores Apex en objetos Billing y conviértalos en procesos asíncronos antes de programar una ejecución por lotes de facturas. Las automatizaciones síncronas pueden detener una ejecución o dejar facturas en Borrador en curso, Publicación en curso o Error.
Ediciones necesarias
| Disponible en: Lightning Experience |
| Disponible en: Enterprise Edition, Unlimited Edition y Developer Edition con la licencia Revenue Cloud Advanced o la licencia Revenue Cloud Billing |
| Permisos de usuario necesarios | |
|---|---|
| Para revisar y convertir flujos desencadenados por registros: | Gestionar flujo |
| Para visualizar desencadenadores de Apex: | Ver parámetros y configuración |
| Para convertir desencadenadores Apex: | Apex de autor |
| Para recuperar facturas atascadas: | Conjunto de permisos Administrador de facturación O Conjunto de permisos Usuario de operaciones de facturación |
Un flujo desencadenado por registro o desencadenador Apex está vinculado a un objeto, como Factura o Partida de factura. Usted define y activa el flujo en ese objeto en Flow Builder. Una persona que tiene el permiso Apex Autor define el desencadenador Apex en ese objeto y lo establece como activo. Estas automatizaciones son personalizadas. Billing no los crea. Consulte Activar o desactivar un flujo y Definir desencadenadores Apex.
Cuando una ejecución por lotes de facturas genera facturas, la ejecución crea o actualiza registros en objetos Billing. Esos objetos incluyen facturas, partidas de factura, partidas de impuestos, memorandos de débito y crédito, programaciones de facturación y elementos del periodo de facturación. Cualquier flujo o desencadenador activo en un objeto Billing se ejecuta a continuación para cada registro que guarda la ejecución por lotes de facturas.
Una automatización síncrona se ejecuta como parte del guardado del registro. La ejecución por lotes de facturas no termina de guardar la factura hasta que se realice ese flujo o desencadenador. Si la automatización consulta registros relacionados para cada factura, la ejecución puede alcanzar límites de procesamiento o tiempo de espera. Las facturas pueden permanecer en Borrador en curso, Publicación en curso o Error.
Una automatización asíncrona espera hasta que se guarden los registros de facturas, luego se ejecuta. La ejecución por lotes puede finalizar la generación de facturas. El flujo o desencadenador aún se ejecuta, pero no mientras se guarda la factura.
- En Configuración, en el cuadro Búsqueda rápida, ingrese Flujos y luego seleccione Flujos.
-
Revise flujos desencadenados por registros activos en estos objetos Billing.
- Factura
- Partida de factura
- Impuestos de partida de factura
- Memorando de débito
- Partida de memorando de débito
- Impuestos de partida de memorando de débito
- Memorando de crédito
- Partida de nota de crédito
- Impuestos de partida de memorando de crédito
- Programación de facturación
- Elemento de periodo de facturación
- Desde Configuración, en el cuadro Búsqueda rápida, ingrese Apex Triggers y, a continuación, seleccione Apex Triggers.
- Revise desencadenadores activos en los mismos objetos.
-
Para enumerar las automatizaciones con SOQL, abra el Editor de consultas de Developer Console.
Guiones de muestra:
Para la consulta de flujo, seleccione Utilizar API de herramientas. Para la consulta de desencadenador Apex, deje la API de herramientas borrada.
Flujos:
SELECT Id, IsActive, Label, ProcessType, ManageableState, TriggerObjectOrEventId, TriggerObjectOrEventLabel, TriggerType FROM FlowDefinitionView WHERE TriggerObjectOrEventId IN ('Invoice','InvoiceLine','DebitMemo','DebitMemoLine','CreditMemo','CreditMemoLine','InvoiceLineTax','DebitMemoLineTax','CreditMemoLineTax','BillingSchedule','BillingPeriodItem') AND IsActive = TRUEDesencadenadores Apex:
SELECT Id, TableEnumOrId, Name, Status FROM ApexTrigger WHERE TableEnumOrId IN ('Invoice','InvoiceLine','DebitMemo','DebitMemoLine','CreditMemo','CreditMemoLine','InvoiceLineTax','DebitMemoLineTax','CreditMemoLineTax','BillingSchedule','BillingPeriodItem') AND Status = 'Active' - Para cada flujo desencadenado por registro después de guardar, mueva la lógica a una ruta Ejecutar de forma asíncrona de modo que se ejecute después de confirmar el guardado de facturas. Consulte Flujos desencadenados.
- Para cada desencadenador Apex, trabaje con una persona que tenga el permiso Apex Autor para mover la lógica fuera del guardado de registros. Utilice Apex colocable en cola o un desencadenador Apex en un evento de cambio, que se ejecuta después de que se complete el guardado. Consulte Apex colocable en cola y Suscribirse con desencadenadores Apex.
Después de convertir las automatizaciones, programe la siguiente ejecución por lotes de facturas. Consulte Generar facturas automáticamente basándose en programaciones de facturación.
Si las facturas de una ejecución anterior están atascadas en Borrador en curso, Publicación en curso o Error, haga clic en Recuperar en la ejecución por lotes de facturas. Luego genere facturas de nuevo.
