Epicor

Part Checking in Sales order
for each ttorderdtl where (ttorderdtl.RowMod = 'U' OR ttorderdtl.RowMod = 'A') 
no-lock: 

find first part where 
part.Company = ttorderdtl.Company and 
part.PartNum = ttorderdtl.PartNum no-lock no-error. 

if not available part then do: 
{lib/PublishEx.i &ExMsg = "'Invalid Part Number'"} 
{&THROW_PUBLIC}. 
end. 

end.

AP Invoice Posting locked

Go to SQL Query and type Select * from Rvlock
if data is there delete the row.
then repost the AP Invoice.
still it is not posted.
open epicor admin tools
and run conversion 10250
then repost the AP Invoice

Part Number Auto generate using BPM in Epicor

Find ttPart where ttPart.RowMod = "A" no-error.
If Available ttPart then do :
For each Part where Part.Company = ttPart.Company and part.Shortchar01
= ttPart.ShortChar01 and Part.ProdCode = ttPart.ProdCode :
if Part.Number01 = 0 then
ttPart.Number01 = 100015.
end.
end.
ttPart.PartNum = ttPart.ShortChar01 + ttPart.ProdCode + String(ttPart.Number01).


Find ttPart where ttPart.RowMod = "A" no-error.
If Available ttPart then do :
For each Part where Part.Company = ttPart.Company and part.Shortchar01
= ttPart.ShortChar01 and Part.ProdCode = ttPart.ProdCode :
if Part.Number01 > 0 then
ttPart.Number01 = Part.Number01 + 1.
end.
end.
ttPart.PartNum = ttPart.ShortChar01 + ttPart.ProdCode + String(ttPart.Number01).

Check Duplicate PO in Sales Order using BPM in Epicor

Open the Method Directives application (in the standard Epicor menu — Main Menu >> System Management >> Business Process Management >> Setup >> Method Directives).

01-Method Directives

Click the “Method Code” button to open the search window, and search for the Method Name starting at “Update” and the Business Object “SalesOrder.”  Select the “Update” method.

02-Method Search

From the menu or toolbar, select File >> New >> New Pre-Processing.

03-New Pre-Processing

Give your directive the name “Check for Duplicate PO,” and check the “Enabled” and “Prevent Endless Loops” check boxes.

04-New Method

Click the “Conditions” button and then the “Add Line” button.

05-New Condition

Under “User Text” select “number of rows in the designed query…”.

06-Designed Query

Click the “designed query” hyperlink and then give the query a name — “DupPO”, type in the query “for each ttOrderHed no-lock  ,  each OrderHed no-lock  where (OrderHed.CustNum = ttOrderHed.CustNum and OrderHed.PONum = ttOrderHed.PONum and OrderHed.OrderNum <> ttOrderHed.OrderNum )” and then click “OK.”

07-DupPO query

Leave the “is not less than 1″ portion of the condition as is, and click “OK.”

08-Completed Condition

Click the “Actions” button and then the “Add Line” button.

09-Add Action

Select the “show informational message based on the designed template” option.

10-New Action

Click the “designed” hyperlink, and enter the name, severity, and message text.

11-Informational Message

If you want to show the PO number the user entered, click “Insert” and enter the name “PONum”, select the proper table “ttOrderHed”, check all the boxes, and check the “PONum” field name.  Click OK.

12-Select Table Fields

As soon as you save your work, the Method Directive will be called anytime and anywhere the SalesOrder.Update method is called.

13-Informational Message

Add New Button in Epicor Action Menu using VB.Net

Private sub AddTools()
Dim custButton As New Infragistics.Win.UltraWinToolbars.ButtonTool("TestTool")
Dim pop As Infragistics.Win.UltraWinToolbars.PopupMenuTool = Nothing
custButton.SharedProps.Caption = "Print Receipt"
If baseToolbarsManager.Tools.Exists("TestTool") = False Then
        baseToolbarsManager.Tools.Add(custButton)
        baseToolbarsManager.Toolbars("Standard Tools").Tools.Add(custButton)
        baseToolbarsManager.Tools("ActionsMenu").SharedProps.Enabled = True
        pop = DirectCast(baseToolbarsManager.Tools("ActionsMenu"),        

        Infragistics.Win.UltraWinToolbars.PopupMenuTool)
        pop.Tools.AddRange(New Infragistics.Win.UltraWinToolbars.ToolBase() {custButton})
        Dim intFuncImage As System.Drawing.Image = EpiUIImages.GetImage("InternalFunction")
        Dim app As New Infragistics.Win.Appearance()
        app.Image = intFuncImage
        baseToolbarsManager.Tools("TestTool").SharedProps.AppearancesLarge.Appearance = app
        baseToolbarsManager.Tools("TestTool").SharedProps.AppearancesSmall.Appearance = app
End If
End sub

Private Sub QuoteForm_Load(ByVal sender As Object, ByVal args As EventArgs)
            AddTools()
End Sub

Private Sub baseToolbarsManager_ToolClick(ByVal sender As Object, ByVal args As Infragistics.Win.UltraWinToolbars.ToolClickEventArgs)
If args.Tool.Key.tostring() = "TestTool" then
          Dim QView As EpiDataView = CType(oTrans.EpiDataViews("QuoteHed"), EpiDataView)
          Dim QuoteStr As Int32 = QView.dataView(QView.Row)("QuoteNum")
          Process.Start("Crystal.exe",QuoteStr )
End if
End Sub

4 comments:

  1. You know how to make a custom button to the button refresh in dashboard-assembly?

    ReplyDelete
  2. Inside the button try to write the code "oTrans.Refresh()" function and see..

    ReplyDelete
  3. Thank you for compiling such a valuable collection of resources and insights on Epicor. This page serves as an excellent reference for professionals seeking to deepen their understanding of Epicor's functionalities and best practices. The range of topics covered, from implementation strategies to troubleshooting tips, is particularly helpful for organizations aiming to optimize their use of the platform.

    I would be interested in any additional content you may have on advanced features or lesser-known capabilities within Epicor that can drive further operational efficiencies. Insights into how different industries have successfully leveraged Epicor would also be beneficial.

    Looking forward to your continued contributions to this space and more expert guidance on leveraging Epicor to its fullest potential.

    Epicforcetech

    ReplyDelete
  4. Top-notch website! Explore erp companies in India. Visit Index Infotech, where we empower businesses with expert industry-specific Epicor ERP solutions.

    ReplyDelete