Solved

Add link to another screen in Acumatica Mobile

  • 15 February 2023
  • 3 replies
  • 277 views

Hello, 

 

Does anyone know how to meke it so thath when I click on a Shipment on the Sales Order Screen, it redirects to the Shipment Screen?

 

Sales Order Screen

 

My Shipment to redirect

 

My Custom Shipment Screen

 

 

 

This is the code fro the Sales Order Screen

add screen SO301000 {
add container "OrderSummary" {
formActionsToExpand = 1
add layout "OrderHeader" {
displayName = "OrderHeader"
layout = "HeaderSimple"
add layout "OrderHeaderNbrRow" {
displayName = "OrderHeaderNbrRow"
layout = "Inline"
add field "OrderNbr"
add field "OrderTotal"
}
add layout "OrderHeaderTaxTotalRow" {
displayName = "OrderHeaderTaxTotalRow"
layout = "Inline"
add field "Status"
add field "DiscountTotal"
}
add layout "OrderHeaderTotalRow" {
displayName = "OrderHeaderTotalRow"
layout = "Inline"
add field "OrderedQty"
add field "TaxTotal"
}
}
add layout "OrderTypeRow" {
displayName = "OrderTypeRow"
layout = "Inline"
add field "OrderType" {
selector {
add field "OrderType"
add field "Description"
}
}
add field "Currency"
}
add field "ControlTotal"
add layout "OrderDateRow" {
displayName = "OrderDateRow"
layout = "Inline"
add field "Date"
add field "RequestedOn"
}
add field "Customer" {
selectorDisplayFormat = KeyDescription
pickerType = Searchable
}
add field "Location" {
selectorDisplayFormat = KeyDescription
pickerType = Detached
}
add field "Contact" {
pickerType = Searchable
selector {
fieldsToShow = 3
add field "Contact"
add field "JobTitle"
add field "Email"
add field "ContactID" {
forceIsVisible = False
}
}
}
add field "DestinationWarehouse"
add field "Description"
add field "NoteText" {
displayName = "Notes"
textType = PlainMultiLine
}
add group "ShipInfoGroup" {
displayName = "Shipping"
collapsable = True
collapsed = True
add layout "ShipViaRow" {
displayName = "ShipViaRow"
layout = "Inline"
add field "ShippingDeliverySettings#ShipVia"
add field "ShippingDeliverySettings#Priority"
}
add field "ShippingDeliverySettings#ShippingTerms"
add layout "ShipDeliveryOpt1" {
displayName = "ShipDeliveryOpt1"
layout = "Inline"
add field "ShippingDeliverySettings#ResidentialDelivery"
add field "ShippingDeliverySettings#SaturdayDelivery"
}
add layout "ShipDeliveryOpt2" {
displayName = "ShipDeliveryOpt2"
layout = "Inline"
add field "ShippingDeliverySettings#Insurance"
add field "ShippingDeliverySettings#UseCustomerSAccount"
}
add field "AddressesShipToContact#OverrideContact"
add field "AddressesShipToContact#AccountName"
add field "AddressesShipToContact#Attention"
add field "AddressesShipToContact#Phone1" {
special = PhoneCall
}
add field "AddressesShipToContact#Email" {
special = EmailSend
}
add layout "OverrideShipAddressRow" {
displayName = "OverrideShipAddressRow"
layout = "Inline"
add field "AddressesShipToAddress#OverrideAddress"
add field "AddressesShipToAddress#Validated"
}
add field "AddressesShipToAddress#AddressLine1"
add field "AddressesShipToAddress#AddressLine2"
add field "AddressesShipToAddress#City"
add layout "ShipStateRow" {
displayName = "ShipStateRow"
layout = "Inline"
add field "AddressesShipToAddress#State" {
weight = 2
}
add field "AddressesShipToAddress#PostalCode"
}
add field "AddressesShipToAddress#Country"
}
add group "PayInfoGroup" {
displayName = "Payment Settings"
collapsable = True
collapsed = True
add field "FinancialPaymentInformation#PaymentMethod"
add field "FinancialPaymentInformation#CardAccountNbr"
add field "FinancialPaymentInformation#CashAccount"
add field "FinancialPaymentInformation#PaymentRef"
}
add layout "DetailsTab" {
displayName = "Details"
layout = "DataTab"
add containerLink "Details"
}
add layout "OrderSettingsTab" {
displayName = "Settings"
layout = "Tab"
add group "FinInfoGroup" {
displayName = "Financial"
collapsable = True
collapsed = True
add field "FinancialFinancialInformation#Branch"
add layout "BillTaxZoneRow" {
displayName = "BillTaxZoneRow"
layout = "Inline"
add field "FinancialFinancialInformation#OverrideTaxZone"
add field "FinancialFinancialInformation#CustomerTaxZone"
}
add field "FinancialFinancialInformation#EntityUsageType"
add field "FinancialFinancialInformation#Terms"
}
add group "BillToInfoGroup" {
displayName = "Bill-To Info"
collapsable = True
collapsed = True
add field "AddressesBillToContact#OverrideContact"
add field "AddressesBillToContact#AccountName"
add field "AddressesBillToContact#Attention"
add field "AddressesBillToContact#Phone1" {
special = PhoneCall
}
add field "AddressesBillToContact#Email" {
special = EmailSend
}
add layout "OverrideBillAddressRow" {
displayName = "OverrideBillAddressRow"
layout = "Inline"
add field "AddressesBillToAddress#OverrideAddress"
add field "AddressesBillToAddress#Validated"
}
add field "AddressesBillToAddress#AddressLine1"
add field "AddressesBillToAddress#AddressLine2"
add field "AddressesBillToAddress#City"
add layout "BillStateRow" {
displayName = "BillStateRow"
layout = "Inline"
add field "AddressesBillToAddress#State" {
weight = 2
}
add field "AddressesBillToAddress#PostalCode"
}
add field "AddressesBillToAddress#Country"
}
add group "OtherGroup" {
displayName = "Other"
collapsable = True
collapsed = True
add layout "OrderRefNbrRow" {
displayName = "OrderRefNbrRow"
layout = "Inline"
add field "CustomerOrderNbr"
add field "ExternalReference"
}
add field "Project"
add field "CommissionsDefaultSalesperson#DefaultSalesperson" {
selectorDisplayFormat = KeyDescription
}
add layout "ShipSchedRow" {
displayName = "ShipSchedRow"
layout = "Inline"
add field "ShippingOrderShippingSettings#SchedShipment"
add field "ShippingOrderShippingSettings#ShipSeparately"
}
add field "ShippingOrderShippingSettings#ShippingRule"
add field "ShippingOrderShippingSettings#PreferredWarehouseID"
add layout "ShipCancelRow" {
displayName = "ShipCancelRow"
layout = "Inline"
add field "ShippingOrderShippingSettings#CancelBy"
add field "ShippingOrderShippingSettings#Canceled"
}
add field "ShippingDeliverySettings#ShippingZone"
add field "ShippingDeliverySettings#FOBPoint"
add field "FinancialFinancialInformation#BillSeparately"
add layout "BillInvoiceRow" {
displayName = "BillInvoiceRow"
layout = "Inline"
add field "FinancialFinancialInformation#InvoiceNbr"
add field "FinancialFinancialInformation#InvoiceDate"
}
add layout "BillDueRow" {
displayName = "BillDueRow"
layout = "Inline"
add field "FinancialFinancialInformation#DueDate"
add field "FinancialFinancialInformation#CashDiscountDate"
}
add layout "BillOrigOrderRow" {
displayName = "BillOrigOrderRow"
layout = "Inline"
add field "FinancialPaymentInformationOtherInformation#OrigOrderType"
add field "FinancialPaymentInformationOtherInformation#OrigOrderNbr"
}
add field "FinancialPaymentInformationOwnership#Owner"
}
add containerLink "Discounts"
add containerLink "Taxes"
add containerLink "Approvals"
add containerLink "Commissions"
add containerLink "Shipments"
add containerLink "Payments"
}
add recordAction "Cancel" {
behavior = Cancel
}
add recordAction "Save" {
behavior = Save
}
add recordAction "PutOnHold" {
behavior = Record
}
add recordAction "ReleaseFromHold" {
behavior = Record
}
add recordAction "ReleaseFromCreditHold" {
behavior = Record
}
add recordAction "Approve" {
behavior = Record
syncLongOperation = True
}
add recordAction "Reject" {
behavior = Record
syncLongOperation = True
}
add recordAction "CaptureCCPayment" {
behavior = Record
syncLongOperation = True
}
add recordAction "AuthorizeCCPayment" {
behavior = Record
syncLongOperation = True
}
add recordAction "VoidCCPayment" {
behavior = Record
syncLongOperation = True
}
add recordAction "MobileCreatePayment" {
behavior = Void
redirect = True
}
add recordAction "CancelOrder" {
behavior = Record
syncLongOperation = True
}
add recordAction "SignReport" {
displayName = "Sign Report"
behavior = SignReport
}
attachments {
}
}
add container "Details" {
fieldsToShow = 3
listActionsToExpand = 1
formActionsToExpand = 2
containerActionsToExpand = 1
add field "Branch"
add group "LineInventoryIdGroup" {
displayName = "LineInventoryIdGroup"
collapsed = True
template = ExpansionPanel
add field "InventoryID" {
listPriority = 100
selectorDisplayFormat = Key
pickerType = Searchable
}
add field "LineDescription" {
listPriority = 80
}
add layout "LineSubitemRow" {
displayName = "LineSubitemRow"
layout = "Inline"
add field "AlternateID"
add field "Subitem"
}
}
add layout "LineQuantityRow" {
displayName = "LineQuantityRow"
layout = "Inline"
add field "Quantity" {
listPriority = 90
}
add field "UOM" {
pickerType = Attached
}
}
add group "LinePriceGroup" {
displayName = "LinePriceGroup"
collapsed = True
template = ExpansionPanel
add layout "LinePriceRow" {
displayName = "LinePriceRow"
layout = "Inline"
add field "UnitPrice"
add field "DiscUnitPrice"
}
add layout "LineFreeItemRow" {
displayName = "LineFreeItemRow"
layout = "Inline"
add field "FreeItem"
add field "ManualDiscount"
}
add layout "LineDiscountRow" {
displayName = "LineDiscountRow"
layout = "Inline"
add field "DiscountPercent"
add field "DiscountAmount"
}
add field "DiscountCode" {
pickerType = Searchable
}
}
add field "ExtPrice"
add field "Warehouse"
add field "RequestedOn"
add group "LineShipInfoGroup" {
displayName = "Other"
collapsable = True
collapsed = True
add field "ProjectTask" {
pickerType = Searchable
}
add field "CostCode" {
selectorDisplayFormat = Key
selector {
add field "CostCodeCD"
add field "Description"
}
}
add layout "ShipOnRow" {
displayName = "ShipOnRow"
layout = "Inline"
add field "ShipOn"
add field "ShippingRule"
}
add layout "LineReqShipQtyRow" {
displayName = "LineReqShipQtyRow"
layout = "Inline"
add field "OpenQty"
add field "QtyOnShipments"
}
add layout "LineThresholdRow" {
displayName = "LineThresholdRow"
layout = "Inline"
add field "UndershipThreshold"
add field "OvershipThreshold"
}
add field "LotSerialNbr"
add field "ExpirationDate"
add field "ReasonCode"
add field "MarkForPO"
add field "POSource"
add layout "LineTermRow" {
displayName = "LineTermRow"
layout = "Inline"
add field "TermStartDate"
add field "TermEndDate"
}
add field "UnbilledAmount"
add field "TaxCategory"
}
add containerAction "Insert" {
icon = "system://Plus"
behavior = Create
}
add selectionAction "Delete" {
icon = "system://Trash"
behavior = Delete
}
add recordAction "Delete" {
icon = "system://Trash"
behavior = Delete
after = Close
}
add recordAction "Insert" {
displayName = "Add Another"
icon = "system://Plus"
behavior = Create
}
add recordAction "SOOrderLineSplittingExtensionShowSplits" {
behavior = Void
redirect = True
redirectToContainer = "LineDetails$List"
}
attachments {
}
}
add container "Discounts" {
fieldsToShow = 6
listActionsToExpand = 2
formActionsToExpand = 2
containerActionsToExpand = 2
add field "SkipDiscount" {
listPriority = 50
listDisplayFormat = CaptionValue
}
add layout "DiscTypeRow" {
displayName = "DiscTypeRow"
layout = "Inline"
add field "Type" {
listPriority = 100
}
add field "ManualDiscount" {
listPriority = 40
listDisplayFormat = CaptionValue
}
}
add layout "DiscCodeRow" {
displayName = "DiscCodeRow"
layout = "Inline"
add field "DiscountCode" {
listPriority = 70
pickerType = Searchable
selector {
add field "DiscountID"
add field "Description"
}
}
add field "SequenceID" {
listPriority = 60
}
}
add layout "DiscBaseRow" {
displayName = "DiscBaseRow"
layout = "Inline"
add field "DiscountableAmt"
add field "DiscountableQty"
}
add layout "DiscAmtRow" {
displayName = "DiscAmtRow"
layout = "Inline"
add field "DiscountAmt" {
listPriority = 90
}
add field "DiscountPercent"
}
add layout "DiscFreeRow" {
displayName = "DiscFreeRow"
layout = "Inline"
add field "FreeItem"
add field "FreeItemQty"
}
add field "ExternalDiscountCode"
add field "Description"
add containerAction "Insert" {
icon = "system://Plus"
behavior = Create
}
add selectionAction "Delete" {
icon = "system://Trash"
behavior = Delete
}
add recordAction "Delete" {
icon = "system://Trash"
behavior = Delete
after = Close
}
add recordAction "Insert" {
displayName = "Add Another"
icon = "system://Plus"
behavior = Create
}
attachments {
}
}
add container "Taxes" {
fieldsToShow = 2
listActionsToExpand = 2
formActionsToExpand = 2
containerActionsToExpand = 2
add layout "TaxIdRow" {
displayName = "TaxIdRow"
layout = "Inline"
add field "TaxID" {
listPriority = 90
}
add field "TaxRate"
}
add field "TaxType"
add layout "TaxAmountRow" {
displayName = "TaxAmountRow"
layout = "Inline"
add field "TaxableAmount"
add field "TaxAmount" {
listPriority = 80
}
}
add field "PendingVAT"
add field "ReverseVAT"
add field "IncludeInVATExemptTotal"
add field "StatisticalVAT"
add containerAction "Insert" {
icon = "system://Plus"
behavior = Create
}
add selectionAction "Delete" {
icon = "system://Trash"
behavior = Delete
}
add recordAction "Delete" {
icon = "system://Trash"
behavior = Delete
after = Close
}
attachments {
}
}
add container "Commissions" {
fieldsToShow = 2
listActionsToExpand = 2
formActionsToExpand = 2
containerActionsToExpand = 2
add field "SalespersonID" {
selectorDisplayFormat = KeyDescription
}
add field "Commission"
add field "CommissionAmt"
add field "CommissionableAmount"
add containerAction "Insert" {
icon = "system://Plus"
behavior = Create
}
add selectionAction "Delete" {
icon = "system://Trash"
behavior = Delete
}
add recordAction "Delete" {
icon = "system://Trash"
behavior = Delete
after = Close
}
attachments {
}
}
add container "Shipments" {
fieldsToShow = 4
add layout "ShipmentNbrRow" {
displayName = "ShipmentNbrRow"
layout = "Inline"
add field "ShipmentType" {
listPriority = 80
}
add field "DocumentNbr" {
listPriority = 90
}
}
add field "Status" {
listPriority = 60
}
add layout "ShipmentInvoiceRow" {
displayName = "ShipmentInvoiceRow"
layout = "Inline"
add field "InvoiceType"
add field "InvoiceNbr"
}
add layout "ShipmentDateRow" {
displayName = "ShipmentDateRow"
layout = "Inline"
add field "ShipmentDate" {
listPriority = 70
}
add field "ShippedQty"
}
add layout "ShipmentWeightRow" {
displayName = "ShipmentWeightRow"
layout = "Inline"
add field "ShippedWeight"
add field "ShippedVolume"
}
add layout "ShipmentInvNbr" {
displayName = "ShipmentInvNbr"
layout = "Inline"
add field "InventoryDocType"
add field "InventoryRefNbr"
}
add field "NoteText" {
textType = PlainMultiLine
}
attachments {
}
}
add container "Payments" {
fieldsToShow = 4
listActionsToExpand = 2
formActionsToExpand = 2
containerActionsToExpand = 1
add layout "PaymentRefRow" {
displayName = "PaymentRefRow"
layout = "Inline"
add field "DocType" {
listPriority = 70
}
add field "ReferenceNbr" {
listPriority = 90
pickerType = Searchable
}
}
add layout "PaymentBalanceRow" {
displayName = "PaymentBalanceRow"
layout = "Inline"
add field "Balance"
add field "Status" {
listPriority = 60
}
}
add layout "PaymentAppliedRow" {
displayName = "PaymentAppliedRow"
layout = "Inline"
add field "AppliedToOrder" {
listPriority = 80
}
add field "TransferredToInvoice"
}
add layout "PaymentAmtRow" {
displayName = "PaymentAmtRow"
layout = "Inline"
add field "PaymentAmount"
add field "Currency"
}
add group "PaymentDetailsGroup" {
displayName = "Payment Details"
collapsable = True
collapsed = True
add field "PaymentMethod" {
selectorDisplayFormat = KeyDescription
}
add field "CashAccount" {
selectorDisplayFormat = KeyDescription
}
add field "PaymentRef"
}
add field "NoteText" {
textType = PlainMultiLine
}
add containerAction "CaptureCCPayment" {
behavior = Void
syncLongOperation = True
}
add containerAction "AuthorizeCCPayment" {
behavior = Void
syncLongOperation = True
}
add containerAction "VoidCCPayment" {
behavior = Void
syncLongOperation = True
}
add containerAction "MobileCreatePayment" {
behavior = Void
redirect = True
}
add containerAction "MobileCreatePrepayment" {
behavior = Void
redirect = True
}
add containerAction "Insert" {
displayName = "Add Existing"
behavior = Create
}
add selectionAction "Delete" {
displayName = "Remove"
behavior = Delete
}
add recordAction "ViewPayment" {
displayName = "View Document"
behavior = Void
after = Close
redirect = True
}
add recordAction "Delete" {
displayName = "Remove"
behavior = Delete
after = Close
}
attachments {
}
}
add container "Approvals" {
fieldsToShow = 5
add field "Reason" {
listPriority = 10
textType = PlainMultiLine
listDisplayFormat = CaptionValue
}
add layout "ApproverRow" {
displayName = "ApproverRow"
layout = "Inline"
add field "AssignedTo" {
listPriority = 50
}
add field "Workgroup" {
listPriority = 40
}
}
add layout "ApprovalStatusRow" {
displayName = "ApprovalStatusRow"
layout = "Inline"
add field "Status" {
listPriority = 30
}
add field "ApprovedBy" {
displayName = "Approved By"
}
}
add layout "ApprovalDatesRow" {
displayName = "ApprovalDatesRow"
layout = "Inline"
add field "AssignmentDate" {
forceIsDisabled = True
}
add field "ApprovalDate" {
listPriority = 20
}
}
attachments {
}
}
add container "LineDetails" {
visible = False
fieldsToShow = 4
listActionsToExpand = 2
formActionsToExpand = 3
containerActionsToExpand = 2
add field "AllocWarehouse" {
selectorDisplayFormat = KeyDescription
}
add layout "AllocQtyRow" {
displayName = "AllocQtyRow"
layout = "Inline"
add field "Quantity"
add field "Allocated" {
listDisplayFormat = CaptionValue
}
}
add field "LotSerialNbr"
add layout "AllocInventoryRow" {
displayName = "AllocInventoryRow"
layout = "Inline"
add field "InventoryID" {
forceIsVisible = True
selectorDisplayFormat = KeyDescription
}
add field "Subitem"
}
add layout "AllocShipOnRow" {
displayName = "AllocShipOnRow"
layout = "Inline"
add field "ShipOn"
add field "Completed"
}
add layout "AllocShipQtyRow" {
displayName = "AllocShipQtyRow"
layout = "Inline"
add field "QtyOnShipments"
add field "QtyReceived"
}
add field "UOM"
add field "ExpirationDate"
add field "MarkForPO"
add field "RelatedDocument"
attachments {
}
}
}

 

 

I Suposse it should be modified in the Shipment container

 

icon

Best answer by Dioris Aguilar 16 February 2023, 17:13

View original

3 replies

Userlevel 5
Badge +2

@jorgeperuyero34 Try adding:

special = AllowEdit

inside the DocumentNbr field.

update screen SO301000 {
update container "Shipments"{
update layout "ShipmentNbrRow"{
update field "DocumentNbr"{
special = AllowEdit
}
}
}
}


This will make a symbol appear next to the field and will redirect to the right screen.

Also make sure to update the mobile site map by adding the Shipments screen as follows:
 

add item "SO302000" {
displayName = "Shipments"
visible = False
}

 

@jorgeperuyero34 Try adding:

special = AllowEdit

inside the DocumentNbr field.

update screen SO301000 {
update container "Shipments"{
update layout "ShipmentNbrRow"{
update field "DocumentNbr"{
special = AllowEdit
}
}
}
}


This will make a symbol appear next to the field and will redirect to the right screen.

Also make sure to update the mobile site map by adding the Shipments screen as follows:
 

add item "SO302000" {
displayName = "Shipments"
visible = False
}

 

Hello,

Thanks for the prompt response
but the symbol did not appear

 

I tried with the E-Mail symbol and it did appear

 

Userlevel 5
Badge +2

@jorgeperuyero34 The initial suggestion would have worked if the Document Nbr. field would have been defined as a standard PXSelector in the aspx file, but it is not, so, additional work must be done.

The Document Nbr. field is defined as a TextEdit control in the aspx file, and considering the AllowEdit works along with selector fields only (https://help.acumatica.com/(W(2))/Help?ScreenId=ShowWiki&pageid=e7d0b802-dedb-406d-aa24-27c767cd2710) it will not work on this field.

Document Nbr. field could show values for different types of documents (not only shipments), and it has a special attribute to make the hyperlink appear in web and redirect to the proper screen, so, putting a PXSelector tied to a single document (shipments) might affect its base functionality.

In this case, since you are interested in redirecting actual shipments to the Shipments screen, we can use the existing ShipmentNbr field to add the corresponding selector attribute, now, we are sure this field will always show a Shipment Nbr. value, so: 

1- Add a PXSelector to the ShipmentNbr field:

[PXSelector(typeof(Search<SOShipment.shipmentNbr>))]

 

 

2- Edit the ASPX file to add the following under the Shipments tab:

<px:PXSelector runat="server" ID="edShipmentNbr" DataField="ShipmentNbr"  />

 

3- Update the Sales Order mobile screen with the following:

update screen SO301000 {
update container "Shipments"{
add field "ShipmentNbr"{
special = AllowEdit
forceIsVisible = True
}
}
}

 

End result:
 

 

Reply


About Acumatica ERP system
Acumatica Cloud ERP provides the best business management solution for transforming your company to thrive in the new digital economy. Built on a future-proof platform with open architecture for rapid integrations, scalability, and ease of use, Acumatica delivers unparalleled value to small and midmarket organizations. Connected Business. Delivered.
© 2008 — 2024  Acumatica, Inc. All rights reserved