Interface ApprovableColumns

All Known Subinterfaces:
QapiCalculationGridLineItem, QapiClaim, QapiCompensationRecord, QapiCustomForm, QapiPriceGridLineItem, QapiPriceList, QapiRebateRecord

public interface ApprovableColumns
Approval workflow columns shared by every Query API table whose rows go through an approval workflow.
Since:
14.3 - Caribou Lou
See Also:
  • Method Details

    • workflowStatus

      SelectableExpression workflowStatus()
      Returns the status of the approval workflow attached to the row.

      The value is the name of one of the Workflow.WorkflowStatus values.

      Example:

      
       import net.pricefx.workflowengine.Workflow.WorkflowStatus
      
       def q = api.queryApi()
       def t = q.tables().priceLists()
      
       return q.source(t, [t.id(), t.workflowStatus()], t.workflowStatus().equal(WorkflowStatus.SUBMITTED))
               .stream { it.collect { it } }
       
      Returns:
      the workflowStatus column as an Enum expression
      Since:
      14.3 - Caribou Lou
    • submittedByName

      SelectableExpression submittedByName()
      Returns the name of the user who submitted the row for approval.

      Example:

      
       import net.pricefx.workflowengine.Workflow.WorkflowStatus
      
       def q = api.queryApi()
       def t = q.tables().priceLists()
      
       return q.source(t, [t.id(), t.submittedByName()], t.workflowStatus().equal(WorkflowStatus.SUBMITTED))
               .stream { it.collect { it } }
       
      Returns:
      the submittedByName column as a String expression
      Since:
      14.3 - Caribou Lou
      See Also:
    • approvedByName

      SelectableExpression approvedByName()
      Returns the name of the user who approved the row.

      On all tables except claims, the value is set only when workflowStatus() is APPROVED or NO_APPROVAL_REQUIRED, and is null for any other status.

      Example:

      
       import net.pricefx.workflowengine.Workflow.WorkflowStatus
      
       def q = api.queryApi()
       def t = q.tables().priceLists()
      
       return q.source(t, [t.id(), t.approvedByName()], t.workflowStatus().equal(WorkflowStatus.APPROVED))
               .stream { it.collect { it } }
       
      Returns:
      the approvedByName column as a String expression
      Since:
      14.3 - Caribou Lou
      See Also:
    • deniedByName

      SelectableExpression deniedByName()
      Returns the name of the user who denied the row.

      On all tables except claims, the value is set only when workflowStatus() is DENIED, and is null for any other status.

      Example:

      
       import net.pricefx.workflowengine.Workflow.WorkflowStatus
      
       def q = api.queryApi()
       def t = q.tables().priceLists()
      
       return q.source(t, [t.id(), t.deniedByName()], t.workflowStatus().equal(WorkflowStatus.DENIED))
               .stream { it.collect { it } }
       
      Returns:
      the deniedByName column as a String expression
      Since:
      14.3 - Caribou Lou
      See Also: