Solved

Customization Project - Start Date - AddDays


Userlevel 1

I’d like to take this and subtract 3 days from it. I keep getting syntax errors.

I’d like to take this:

[PXDefault(typeof(AccessInfo.businessDate))]

And make it do something like this:

[PXDefault(typeof(AccessInfo.businessDate)).AddDays(-3)]

to have the start date subtracted 3 days from the current day.

icon

Best answer by Vinay Koppula 2 August 2022, 13:11

View original

11 replies

Userlevel 5
Badge +1

@Vinay Koppula Thank you yes, this works. @Naveen Boga Agreed, I will take a look at this course.

You are welcome. Happy coding! 

Userlevel 1

@Vinay Koppula Thank you yes, this works. @Naveen Boga Agreed, I will take a look at this course.

Userlevel 5
Badge +1

The result of the correct code in my previous comment will be as in the screen shot. 

 

Userlevel 5
Badge +1

Hi @richard77 

You have to add the logic in the graph extension but not in the DAC. I have corrected your code, try the below code and let me know if that works. 

<Customization level="" description="" product-version="22.100">
    <Page path="~/pages/so/so502000.aspx" ControlId="1" pageSource="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">
        <PXGridColumn DataField="CustomerOrderNbr" ParentId="phG_grid_Levels#0_Columns#4" TypeFullName="PX.Web.UI.PXGridColumn" />
        <PXFormView ID="form" ParentId="phF_form" TypeFullName="PX.Web.UI.PXFormView">
            <Children Key="Template" />
        </PXFormView>
        <PXDropDown DataField="Action" ParentId="phF_form_edAction" TypeFullName="PX.Web.UI.PXDropDown" />
    </Page>
    <Automation screen="SO502000">
        <Actions ScreenID="SO502000">
            <Category IsActive="True" DisplayName="Actions" CategoryName="Action" LineNbr="0" />
            <Category IsActive="True" DisplayName="Inquiries" CategoryName="Inquiry" LineNbr="1" />
            <Category IsActive="True" DisplayName="Reports" CategoryName="Report" LineNbr="2" />
        </Actions>
        <Fields ScreenID="SO502000">
            <Field IsActive="True" DisplayName="Action" FieldName="Action" ObjectName="PX.Objects.SO.SOProcessFilter" ComboBoxValues="Set|&lt;SELECT&gt;|&lt;SELECT&gt;;Set|SO301000$printSalesOrder|Print Sales Order;Remove|SO301000$printQuote|Print Quote;Remove|SO301000$emailSalesOrder|Email Sales Order;Remove|SO301000$emailQuote|Email Quote" />
        </Fields>
    </Automation>
    <Graph ClassName="SOOrderProcess" Source="#CDATA" IsNew="True" FileType="ExistingGraph">
        <CDATA name="Source"><![CDATA[using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using PX.Common;
using PX.Data;
using PX.Objects.AR;
using PX.Objects.CR;
using PX.TM;
using PX.Objects.RQ;
using PX.Objects.CS;
using PX.Objects.AR.MigrationMode;
using PX.Objects;
using PX.Objects.SO;

namespace PX.Objects.SO
{
  public class SOOrderProcess_Extension : PXGraphExtension<SOOrderProcess>
  {
    #region Event Handlers

    [PXDBString(2, IsFixed = true, InputMask = ">aa")]
    [PXDefault("SO")]
    [PXSelector(typeof(Search<SOOrderType.orderType, Where<SOOrderType.active, Equal<True>>>))]
    [PXUIField(DisplayName = "Order Type", Visibility = PXUIVisibility.SelectorVisible)]
    protected virtual void SOProcessFilter_OrderType_CacheAttached(PXCache cache)
    {

    }
  
 protected virtual void SOProcessFilter_StartDate_FieldDefaulting(PXCache cache, PXFieldDefaultingEventArgs e)
        {
            SOProcessFilter row = e.Row as SOProcessFilter;
            if (row != null)
            {
                e.NewValue = Base.Accessinfo.BusinessDate.Value.AddDays(-3);
            }
        }


    #endregion
  }
}]]></CDATA>
    </Graph>
    <DAC type="PX.Objects.SO.SOProcessFilter">
        <Field FieldName="Action" TypeName="string" TextAttributes="[PXDefault(&quot;printSalesOrder&quot;)]" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn" />
        <Field FieldName="OrderType" TypeName="string" TextAttributes="#CDATA" OverrideGeneratedAttributes="True" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn">
            <CDATA name="TextAttributes"><![CDATA[[PXDBString(2, IsFixed = true, InputMask = ">aa")]
[PXDefault("SO")]
[PXSelector(typeof(Search<SOOrderType.orderType, Where<SOOrderType.active, Equal<True>>>))]
[PXUIField(DisplayName = "Order Type", Visibility = PXUIVisibility.SelectorVisible)]]]></CDATA>
        </Field>
        <Field FieldName="Status" TypeName="string" TextAttributes="#CDATA" OverrideGeneratedAttributes="True" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn">
            <CDATA name="TextAttributes"><![CDATA[[PXDBString(1, IsFixed = true)]
[PXDefault("H")]
[SOOrderStatus.List]
[PXUIField(DisplayName = "Status", Visibility = PXUIVisibility.SelectorVisible)]]]></CDATA>
        </Field>
        <Field FieldName="StartDate" TypeName="date" TextAttributes="#CDATA" OverrideGeneratedAttributes="True" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn">
            <CDATA name="TextAttributes"><![CDATA[[PXDBDate]
[PXUIField(DisplayName = "Start Date", Visibility = PXUIVisibility.Visible)]]]></CDATA>
        </Field>
    </DAC>
</Customization>

Userlevel 7
Badge +17

@richard77  You are doing completely wrong. you are mixing design code with Graph code. I won’t work at all.

Please extend the graph separately and add the fielddefaulting code.

 

I think you are new to Acumatica development, I would highly recommend you to go through the Application Developer certification (T Series).

Userlevel 1
<Customization level="" description="" product-version="21.205">
<Page path="~/pages/so/so502000.aspx" ControlId="1" pageSource="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">
<PXGridColumn DataField="CustomerOrderNbr" ParentId="phG_grid_Levels#0_Columns#4" TypeFullName="PX.Web.UI.PXGridColumn" />
<PXFormView ID="form" ParentId="phF_form" TypeFullName="PX.Web.UI.PXFormView">
<Children Key="Template" />
</PXFormView>
<PXDropDown DataField="Action" ParentId="phF_form_edAction" TypeFullName="PX.Web.UI.PXDropDown" />
</Page>
<Automation screen="SO502000">
<Actions ScreenID="SO502000">
<Category IsActive="True" DisplayName="Actions" CategoryName="Action" LineNbr="0" />
<Category IsActive="True" DisplayName="Inquiries" CategoryName="Inquiry" LineNbr="1" />
<Category IsActive="True" DisplayName="Reports" CategoryName="Report" LineNbr="2" />
</Actions>
<Fields ScreenID="SO502000">
<Field IsActive="True" DisplayName="Action" FieldName="Action" ObjectName="PX.Objects.SO.SOProcessFilter" ComboBoxValues="Set|&lt;SELECT&gt;|&lt;SELECT&gt;;Set|SO301000$printSalesOrder|Print Sales Order;Remove|SO301000$printQuote|Print Quote;Remove|SO301000$emailSalesOrder|Email Sales Order;Remove|SO301000$emailQuote|Email Quote" />
</Fields>
</Automation>
<Graph ClassName="SOOrderProcess" Source="#CDATA" IsNew="True" FileType="ExistingGraph">
<CDATA name="Source"><![CDATA[using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using PX.Common;
using PX.Data;
using PX.Objects.AR;
using PX.Objects.CR;
using PX.TM;
using PX.Objects.RQ;
using PX.Objects.CS;
using PX.Objects.AR.MigrationMode;
using PX.Objects;
using PX.Objects.SO;

namespace PX.Objects.SO
{
public class SOOrderProcess_Extension : PXGraphExtension<SOOrderProcess>
{
#region Event Handlers



[PXDBString(2, IsFixed = true, InputMask = ">aa")]
[PXDefault("SO")]
[PXSelector(typeof(Search<SOOrderType.orderType, Where<SOOrderType.active, Equal<True>>>))]
[PXUIField(DisplayName = "Order Type", Visibility = PXUIVisibility.SelectorVisible)]
protected virtual void SOProcessFilter_OrderType_CacheAttached(PXCache cache)
{

}



#endregion
}
}]]></CDATA>
</Graph>
<DAC type="PX.Objects.SO.SOProcessFilter">
<Field FieldName="Action" TypeName="string" TextAttributes="[PXDefault(&quot;printSalesOrder&quot;)]" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn" />
<Field FieldName="OrderType" TypeName="string" TextAttributes="#CDATA" OverrideGeneratedAttributes="True" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn">
<CDATA name="TextAttributes"><![CDATA[[PXDBString(2, IsFixed = true, InputMask = ">aa")]
[PXDefault("SO")]
[PXSelector(typeof(Search<SOOrderType.orderType, Where<SOOrderType.active, Equal<True>>>))]
[PXUIField(DisplayName = "Order Type", Visibility = PXUIVisibility.SelectorVisible)]]]></CDATA>
</Field>
<Field FieldName="Status" TypeName="string" TextAttributes="#CDATA" OverrideGeneratedAttributes="True" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn">
<CDATA name="TextAttributes"><![CDATA[[PXDBString(1, IsFixed = true)]
[PXDefault("H")]
[SOOrderStatus.List]
[PXUIField(DisplayName = "Status", Visibility = PXUIVisibility.SelectorVisible)]]]></CDATA>
</Field>
<Field FieldName="StartDate" TypeName="date" TextAttributes="#CDATA" OverrideGeneratedAttributes="True" OverrideClassName="PX.Objects.SO.SOProcessFilter" StorageName="ExistingColumn">
<CDATA name="TextAttributes"><![CDATA[DACName_FieldName_FieldDefaulting(PXCache cache, PXFieldDefaultingEventArgs e)
{
DACName row = e.Row as DACName;
if (row != null)
{
e.NewValue = Accessinfo.BusinessDate.Value.AddDays(-3);
}
}]]></CDATA>
</Field>
</DAC>
</Customization>

 

Userlevel 7
Badge +17

HI @richard77  Not the design code. Please share the graph code, where you written this logic?

OR

If possible, share the customization package with the version and build details. 

Userlevel 1
<%@ Page Language="C#" MasterPageFile="~/MasterPages/FormDetail.master" AutoEventWireup="true" ValidateRequest="false" CodeFile="SO502000.aspx.cs"
Inherits="Page_SO502000" Title="Untitled Page" %>

<%@ MasterType VirtualPath="~/MasterPages/FormDetail.master" %>
<asp:Content ID="cont1" ContentPlaceHolderID="phDS" runat="Server">
<px:PXDataSource ID="ds" runat="server" Visible="True" TypeName="PX.Objects.SO.SOOrderProcess" PrimaryView="Filter" BorderStyle="NotSet" Width="100%" PageLoadBehavior="PopulateSavedValues">
<DataTrees>
<px:PXTreeDataMember TreeView="_EPCompanyTree_Tree_" TreeKeys="WorkgroupID" ></px:PXTreeDataMember>
</DataTrees>
</px:PXDataSource>
</asp:Content>
<asp:Content ID="cont2" ContentPlaceHolderID="phF" runat="Server">
<px:PXFormView ID="form" runat="server" DataSourceID="ds" Style="z-index: 100" Width="100%" DataMember="Filter" Caption="Selection"
EmailingGraph="">
<Template>
<px:PXLayoutRule runat="server" StartColumn="True" LabelsWidth="S" ControlSize="XM" ></px:PXLayoutRule>
<px:PXDropDown CommitChanges="True" ID="edAction" runat="server" AllowNull="False" DataField="Action" ></px:PXDropDown>
<px:PXLayoutRule runat="server" Merge="True" ></px:PXLayoutRule>
<px:PXSelector CommitChanges="True" ID="edOwnerID" runat="server" DataField="OwnerID" ></px:PXSelector>
<px:PXCheckBox CommitChanges="True" SuppressLabel="True" ID="chkMyOwner" runat="server" Checked="True" DataField="MyOwner" ></px:PXCheckBox>
<px:PXLayoutRule runat="server" Merge="False" ></px:PXLayoutRule>
<px:PXLayoutRule runat="server" Merge="True" ></px:PXLayoutRule>
<px:PXSelector CommitChanges="True" ID="edWorkGroupID" runat="server" DataField="WorkGroupID" ></px:PXSelector>
<px:PXCheckBox CommitChanges="True" SuppressLabel="True" ID="chkMyWorkGroup" runat="server" DataField="MyWorkGroup" ></px:PXCheckBox>
<px:PXLayoutRule runat="server" Merge="False" ></px:PXLayoutRule>
<px:PXSegmentMask CommitChanges="True" ID="edSalesPersonID" runat="server" DataField="SalesPersonID" ></px:PXSegmentMask>
<px:PXSegmentMask CommitChanges="True" ID="edCustomerID" runat="server" DataField="CustomerID" ></px:PXSegmentMask>
<px:PXLayoutRule runat="server" StartColumn="True" LabelsWidth="S" ControlSize="XM" ></px:PXLayoutRule>
<px:PXSelector CommitChanges="True" ID="edOrderType" runat="server" DataField="OrderType" ></px:PXSelector>
<px:PXDropDown CommitChanges="True" ID="edStatus" runat="server" DataField="Status" ></px:PXDropDown>
<px:PXDateTimeEdit CommitChanges="True" ID="edStartDate" runat="server" DataField="StartDate" ></px:PXDateTimeEdit>
<px:PXDateTimeEdit CommitChanges="True" ID="edEndDate" runat="server" DataField="EndDate" ></px:PXDateTimeEdit>
<px:PXLayoutRule runat="server" StartColumn="True" LabelsWidth="S" ControlSize="SM" ></px:PXLayoutRule>
<px:PXCheckBox CommitChanges="True" ID="chkPrintWithDeviceHub" runat="server" DataField="PrintWithDeviceHub" AlignLeft="true" ></px:PXCheckBox>
<px:PXCheckBox CommitChanges="True" ID="chkDefinePrinterManually" runat="server" DataField="DefinePrinterManually" AlignLeft="true" ></px:PXCheckBox>
<px:PXSelector CommitChanges="True" ID="edPrinterID" runat="server" DataField="PrinterID" ></px:PXSelector>
<px:PXTextEdit CommitChanges="true" ID="edNumberOfCopies" runat="server" DataField="NumberOfCopies" ></px:PXTextEdit>
</Template>
</px:PXFormView>
</asp:Content>
<asp:Content ID="cont3" ContentPlaceHolderID="phG" runat="Server">
<px:PXGrid ID="grid" runat="server" DataSourceID="ds" Height="150px" Style="z-index: 100" Width="100%" ActionsPosition="Top"
Caption="Documents" SkinID="PrimaryInquire" AllowPaging="true" AdjustPageSize="Auto" SyncPosition="true" FastFilterFields="OrderNbr,OrderDesc,CustomerOrderNbr,CustomerID,CustomerID_BAccountR_acctName">
<Levels>
<px:PXGridLevel DataMember="Records">
<RowTemplate>
<px:PXLayoutRule runat="server" StartColumn="True" LabelsWidth="M" ControlSize="XM" ></px:PXLayoutRule>
<px:PXCheckBox ID="chkSelected" runat="server" DataField="Selected" ></px:PXCheckBox>
<px:PXSelector ID="edOrderType" runat="server" AllowNull="False" DataField="OrderType" Enabled="False" Text="SO" ></px:PXSelector>
<px:PXSelector ID="edOrderNbr" runat="server" DataField="OrderNbr" Enabled="False" AllowEdit="True" ></px:PXSelector>
<px:PXSegmentMask ID="edCustomerID" runat="server" DataField="CustomerID" Enabled="False" ></px:PXSegmentMask>
<px:PXSegmentMask ID="edCustomerLocationID" runat="server" DataField="CustomerLocationID" Enabled="False" ></px:PXSegmentMask>
<px:PXDateTimeEdit ID="edOrderDate" runat="server" DataField="OrderDate" Enabled="False" ></px:PXDateTimeEdit>
<px:PXSelector ID="edCuryID" runat="server" DataField="CuryID" Enabled="False" ></px:PXSelector>
<px:PXNumberEdit ID="edCuryOrderTotal" runat="server" DataField="CuryOrderTotal" Enabled="False" ></px:PXNumberEdit>
</RowTemplate>
<Columns>
<px:PXGridColumn AllowNull="False" DataField="Selected" TextAlign="Center" Type="CheckBox" AllowCheckAll="True" AllowSort="False"
AllowMove="False" ></px:PXGridColumn>
<px:PXGridColumn AllowNull="False" AllowUpdate="False" DataField="OrderType" DisplayFormat="&gt;LL" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="OrderNbr" LinkCommand="ViewDocument" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="OrderDesc" Label="Description" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CustomerOrderNbr" Label="Customer Order" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="Status" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="RequestDate" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="ShipDate" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CustomerID" DisplayFormat="AAAAAAAAAA" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CustomerID_BAccountR_acctName" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CustomerLocationID" DisplayFormat="&gt;AAAAAAA" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CustomerLocationID_Location_descr" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="DefaultSiteID" DisplayFormat="&gt;AAAAAAA" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="DefaultSiteID_INSite_descr" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="ShipVia" DisplayFormat="AAAAAAAAAA" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="ShipVia_Carrier_description" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="ShipZoneID" DisplayFormat="AAAAAAAAAA" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="WorkgroupID" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="OwnerID" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="OrderWeight" TextAlign="Right" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="OrderVolume" TextAlign="Right" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="OrderQty" TextAlign="Right" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CuryID" DisplayFormat="&gt;LLLLL" ></px:PXGridColumn>
<px:PXGridColumn AllowUpdate="False" DataField="CuryOrderTotal" TextAlign="Right" ></px:PXGridColumn>
<px:PXGridColumn AllowNull="False" DataField="Emailed" Type="CheckBox" AllowUpdate="False" TextAlign="Center" ></px:PXGridColumn>
</Columns>
</px:PXGridLevel>
</Levels>
<AutoSize Container="Window" Enabled="True" MinHeight="150" ></AutoSize>
</px:PXGrid>
</asp:Content>

 

Userlevel 7
Badge +17

@richard77  Can you please share the source code?

Userlevel 1

@Naveen Boga Thanks for the response. When I validate I get this response: 

\App_RuntimeCode\PX_Objects_SO_SOProcessFilter_extensions.cs(45): error CS1520: Method must have a return type
Userlevel 7
Badge +17

Hi @richard77  Yes, we cannot subtract the days at the DAC level. Instead, you can write the FieldDefaulting event like below.

 

 protected virtual void DACName_FieldName_FieldDefaulting(PXCache cache, PXFieldDefaultingEventArgs e)
{
DACName row = e.Row as DACName;
if (row != null)
{
e.NewValue = Accessinfo.BusinessDate.Value.AddDays(-3);
}
}

 

 

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