INF
Tue Jan 21 2025 14:50:03 GMT+0000 (Coordinated Universal Time)
Saved by @asepmaulana
Secure Page ASP.NET (.aspx) File <%@ Page Language="C#" AutoEventWireup="true" Inherits="master_files_delivery_route" CodeFile="delivery_route.aspx.cs" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Delivery Route</title> <script type="text/javascript"> function ProcessKeyDown(e) { if (e == 13) { gv_delivery_route.UpdateEdit(); } if (e == 27) { gv_delivery_route.CancelEdit(); } } var command = ''; var cperror_msgnum; function Begin_CallBack(s, e) { command = e.command; } function End_CallBack(s, e) { if ((command == 'UPDATEEDIT' || command == 'DELETEROW') && s.cperror_add_info != 'error') { msg_popup.SetContentUrl("../common/error_message.aspx?message_num=" + s.cperror_msg_num + "&additional_info=" + s.cperror_add_info); msg_popup.Show(); } } function End_CallBack_Grid(s, e) { if (s.cperror_msg_num != "-1") { msg_popup.SetContentUrl("../common/error_message.aspx?message_num=" + s.cperror_msg_num + "&additional_info=" + s.cperror_add_info); msg_popup.Show(); s.cperror_msg_num = '-1'; } } function DeliveryZone_Init(s, e) { s.GetMainElement().onclick = function () { var delivery_zone = s.GetText(); s.PerformCallback(); s.SetText(delivery_zone); }; } function DeliveryZone_EndCallBack(s, e) { s.ShowDropDown(); } function DeliveryZone_GotFocus(s, e) { var item_zone = s.GetSelectedItem(); if (item_zone) { s.SetText(item_zone.GetColumnText('delivery_zone')); } } function DeliveryZone_SelectedChanged(s, e) { var item_zone = s.GetSelectedItem(); if (item_zone) s.SetText(item_zone.GetColumnText('delivery_zone')); gv_delivery_route_d.GetEditor('description').SetValue(item_zone.GetColumnText('description')); gv_delivery_route_d.GetEditor('zone_group').SetValue(item_zone.GetColumnText('zone_group')); gv_delivery_route_d.GetEditor('zone_sub_group').SetValue(item_zone.GetColumnText('zone_sub_group')); gv_delivery_route_d.PerformCallback(); } </script> </head> <body> <form id="form1" runat="server"> <div style="display: inline-block; width: 100%; margin: -8;"> <div style="padding-bottom: 3px;"> <dx:ASPxButton runat="server" ID="btn_new_row" Text="Add New" Theme="Aqua" AutoPostBack="false" Width="88px" UseSubmitBehavior="false"> <ClientSideEvents Click="function(s, e) { gv_delivery_route.AddNewRow(); }" /> </dx:ASPxButton> </div> <dx:ASPxGridView ID="gv_delivery_route" runat="server" AutoGenerateColumns="False" DataSourceID="sql_delivery_route" KeyFieldName="delivery_route" Theme="Aqua" OnInit="gv_delivery_route_Init" OnRowValidating="gv_delivery_route_RowValidating" EnableCallBacks="true" ClientInstanceName="gv_delivery_route" OnCellEditorInitialize="gv_delivery_route_CellEditorInitialize" Settings-ShowFilterBar="Auto" Settings-ShowFilterRow="true"> <Columns> <dx:GridViewCommandColumn VisibleIndex="0" ButtonType="Image" Width="60px"> <EditButton Text="Edit" Visible="true" Image-Url="../images/img_edit.png"> <Image Url="../images/img_edit.png"></Image> </EditButton> <UpdateButton Text="Edit" Visible="true" Image-Url="../images/img_edit.png"> <Image Url="../images/Apply.png"></Image> </UpdateButton> <CancelButton Text="Edit" Visible="true" Image-Url="../images/img_edit.png"> <Image Url="../images/Cancel.png"></Image> </CancelButton> </dx:GridViewCommandColumn> <dx:GridViewDataTextColumn FieldName="delivery_route" ReadOnly="true" VisibleIndex="1" Caption="Delivery Route" PropertiesTextEdit-Style-BackColor="#C2E2ED"> <PropertiesTextEdit> <ClientSideEvents KeyDown="function(s, e) {ProcessKeyDown(e.htmlEvent.keyCode); }" /> </PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataTextColumn FieldName="description" VisibleIndex="2" Caption="Description"> <PropertiesTextEdit> <ClientSideEvents KeyDown="function(s, e) {ProcessKeyDown(e.htmlEvent.keyCode); }" /> </PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataTextColumn FieldName="created_by" ReadOnly="true" Visible="true" VisibleIndex="3" Caption="Create By"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataDateColumn FieldName="created_date" VisibleIndex="4" Caption="Create Date" ReadOnly="true" PropertiesDateEdit-DropDownButton-Enabled="false" PropertiesDateEdit-DisplayFormatInEditMode="true"> <PropertiesDateEdit></PropertiesDateEdit> </dx:GridViewDataDateColumn> <dx:GridViewDataTextColumn FieldName="updated_by" ReadOnly="true" VisibleIndex="5" Caption="Update By"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataDateColumn FieldName="updated_date" VisibleIndex="6" Caption="Updated Date" PropertiesDateEdit-DropDownButton-Enabled="false" ReadOnly="true" PropertiesDateEdit-DisplayFormatInEditMode="true"> <PropertiesDateEdit></PropertiesDateEdit> </dx:GridViewDataDateColumn> <dx:GridViewCommandColumn VisibleIndex="7" ButtonType="Image" Width="30px"> <DeleteButton Visible="true" Text="Delete" Image-Url="../images/img_delete.png"> <Image Url="../images/img_delete.png"></Image> </DeleteButton> </dx:GridViewCommandColumn> </Columns> <SettingsBehavior AllowSelectByRowClick="True" ConfirmDelete="True" AllowFocusedRow="true" /> <SettingsEditing Mode="Inline" /> <SettingsText ConfirmDelete="Are you sure you want to delete?" /> <ClientSideEvents FocusedRowChanged="function(s, e) { if (typeof(gv_delivery_route_d) != 'undefined') { gv_delivery_route_d.PerformCallback(s.GetFocusedRowIndex()); } }" EndCallback="End_CallBack" BeginCallback="Begin_CallBack" /> <Styles> <CommandColumn Spacing="3px" Wrap="False" /> </Styles> </dx:ASPxGridView> <div style="padding-top: 10px"></div> <div style="padding-bottom: 3px;"> <dx:ASPxButton runat="server" ID="btn_add_delivery_route_d" Text="Add New" Theme="Aqua" AutoPostBack="false" Width="88px" UseSubmitBehavior="false"> <ClientSideEvents Click="function(s, e) { gv_delivery_route_d.AddNewRow(); }" /> </dx:ASPxButton> </div> <dx:ASPxGridView ID="gv_delivery_route_d" runat="server" AutoGenerateColumns="False" OnCellEditorInitialize="gv_delivery_route_d_CellEditorInitialize" OnRowValidating="gv_delivery_route_d_RowValidating" OnInit="gv_delivery_route_d_Init" ClientInstanceName="gv_delivery_route_d" DataSourceID="sql_delivery_route_d" KeyFieldName="i_delivery_route;i_delivery_zone" OnCustomCallback="gv_delivery_route_d_CustomCallback" OnCommandButtonInitialize="gv_delivery_route_d_CommandButtonInitialize" Settings-ShowFilterBar="Auto" Settings-ShowFilterRow="true" Theme="Aqua" Width="100%"> <Columns> <dx:GridViewCommandColumn VisibleIndex="0" ButtonType="Image"> <EditButton Text="Edit" Visible="true" Image-Url="../images/img_edit.png"> <Image Url="../images/img_edit.png"></Image> </EditButton> <UpdateButton Text="Edit" Visible="true" Image-Url="../images/img_edit.png"> <Image Url="../images/Apply.png"></Image> </UpdateButton> <CancelButton Text="Edit" Visible="true" Image-Url="../images/img_edit.png"> <Image Url="../images/Cancel.png"></Image> </CancelButton> </dx:GridViewCommandColumn> <dx:GridViewCommandColumn VisibleIndex="1" ButtonType="Image"> <CustomButtons> <dx:GridViewCommandColumnCustomButton ID="cmdUp"> <Image Url="../images/Up.ico"></Image> </dx:GridViewCommandColumnCustomButton> </CustomButtons> <CustomButtons> <dx:GridViewCommandColumnCustomButton ID="cmdDown"> <Image Url="../images/Down.ico"></Image> </dx:GridViewCommandColumnCustomButton> </CustomButtons> </dx:GridViewCommandColumn> <dx:GridViewDataTextColumn FieldName="i_delivery_route" VisibleIndex="2" Width="150px" Visible="false"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataComboBoxColumn FieldName="i_delivery_zone" VisibleIndex="3" ReadOnly="true"> <PropertiesComboBox ValueField="delivery_zone" TextField="delivery_zone" TextFormatString="{0}" DisplayFormatString="{0}" CallbackPageSize="30" EnableCallbackMode="true" DropDownStyle="DropDown" OnItemsRequestedByFilterCondition="cbo_delivery_zone_ItemsRequestedByFilterCondition" IncrementalFilteringMode="Contains" OnItemRequestedByValue="cbo_delivery_zone_ItemRequestedByValue"> <Columns> <dx:ListBoxColumn Caption="Delivery Zone" FieldName="delivery_zone" Name="delivery_zone" /> <dx:ListBoxColumn Caption="Description" FieldName="description" Name="description" /> <dx:ListBoxColumn FieldName="zone_group" Name="zone_group" Caption="Zone Group" /> <dx:ListBoxColumn FieldName="zone_sub_group" Name="zone_sub_group" Caption="Zone Sub Group" /> </Columns> <ClientSideEvents GotFocus="DeliveryZone_GotFocus" Init="DeliveryZone_Init" ValueChanged="DeliveryZone_GotFocus" EndCallback="DeliveryZone_EndCallback" /> </PropertiesComboBox> </dx:GridViewDataComboBoxColumn> <dx:GridViewDataTextColumn FieldName="description" VisibleIndex="4" Width="150px" ReadOnly="true"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataTextColumn FieldName="zone_group" VisibleIndex="5" ReadOnly="true" Caption="Zone Group"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataTextColumn FieldName="zone_sub_group" VisibleIndex="6" ReadOnly="true" Caption="Zone Sub Group"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataTextColumn FieldName="load_seq" VisibleIndex="7" ReadOnly="true"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataTextColumn FieldName="created_by" ReadOnly="true" Visible="true" VisibleIndex="8" PropertiesTextEdit-Style-BackColor="LightGray"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataDateColumn FieldName="created_date" VisibleIndex="9" ReadOnly="true" PropertiesDateEdit-DropDownButton-Enabled="false" PropertiesDateEdit-DisplayFormatInEditMode="true"> <PropertiesDateEdit></PropertiesDateEdit> </dx:GridViewDataDateColumn> <dx:GridViewDataTextColumn FieldName="updated_by" ReadOnly="true" VisibleIndex="10" PropertiesTextEdit-Style-BackColor="LightGray"> <PropertiesTextEdit></PropertiesTextEdit> </dx:GridViewDataTextColumn> <dx:GridViewDataDateColumn FieldName="updated_date" VisibleIndex="11" PropertiesDateEdit-DropDownButton-Enabled="false" ReadOnly="true" PropertiesDateEdit-DisplayFormatInEditMode="true"> <PropertiesDateEdit></PropertiesDateEdit> </dx:GridViewDataDateColumn> <dx:GridViewCommandColumn VisibleIndex="12" ButtonType="Image"> <DeleteButton Visible="true" Text="Delete" Image-Url="../images/img_delete.png"> <Image Url="../images/img_delete.png"></Image> </DeleteButton> </dx:GridViewCommandColumn> </Columns> <ClientSideEvents EndCallback="End_CallBack_Grid" BeginCallback="Begin_CallBack" /> <SettingsBehavior AllowSelectByRowClick="True" ConfirmDelete="True" /> <SettingsEditing Mode="Inline" /> <SettingsText ConfirmDelete="Are you sure you want to delete?" /> <Styles> <CommandColumn Spacing="3px" Wrap="False" /> </Styles> </dx:ASPxGridView> <asp:SqlDataSource ID="sql_delivery_route_d" runat="server" ConnectionString="<%$ ConnectionStrings:mainConnection %>" SelectCommand="select_delivery_route_d" SelectCommandType="StoredProcedure" DeleteCommand="delete_delivery_route_d" DeleteCommandType="StoredProcedure" InsertCommand="save_delivery_route_d" InsertCommandType="StoredProcedure" UpdateCommand="save_delivery_route_d" UpdateCommandType="StoredProcedure" OnDeleted="sql_delivery_route_d_deleted" OnInserted="sql_delivery_route_d_inserted" OnUpdated="sql_delivery_route_d_updated" OnDeleting="sql_delivery_route_d_tran" OnUpdating="sql_delivery_route_d_tran" OnInserting="sql_delivery_route_d_tran" OnSelecting="sql_delivery_route_d_Selecting"> <SelectParameters> <asp:Parameter Name="i_delivery_route" Type="String" /> </SelectParameters> <DeleteParameters> <asp:Parameter Name="i_delivery_route" Type="String" /> <asp:Parameter Name="i_delivery_zone" Type="String" /> <asp:Parameter Name="o_succeed" Type="Boolean" Direction="InputOutput" /> <asp:Parameter Name="o_msg_num" Type="Int32" Direction="InputOutput" Size="10" /> <asp:Parameter Name="o_add_info" Type="String" Direction="InputOutput" DefaultValue="" Size="3000" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="i_delivery_route" Type="String" /> <asp:Parameter Name="i_delivery_zone" Type="String" /> <asp:SessionParameter Name="i_user" SessionField="username" Type="String" /> <asp:Parameter Name="o_succeed" Type="Boolean" Direction="InputOutput" DefaultValue="false" /> <asp:Parameter Name="o_msg_num" Type="Int32" Direction="InputOutput" Size="10" /> <asp:Parameter Name="o_add_info" Type="String" Direction="InputOutput" DefaultValue="" Size="3000" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="i_delivery_route" Type="String" /> <asp:Parameter Name="i_delivery_zone" Type="String" /> <asp:SessionParameter Name="i_user" SessionField="username" Type="String" /> <asp:Parameter Name="o_succeed" Type="Boolean" Direction="InputOutput" DefaultValue="false" /> <asp:Parameter Name="o_msg_num" Type="Int32" Direction="InputOutput" Size="10" /> <asp:Parameter Name="o_add_info" Type="String" Direction="InputOutput" DefaultValue="" Size="3000" /> </UpdateParameters> </asp:SqlDataSource> <asp:SqlDataSource ID="sql_delivery_route" runat="server" ConnectionString="<%$ ConnectionStrings:mainConnection %>" SelectCommand="select_delivery_route" SelectCommandType="StoredProcedure" DeleteCommand="delete_delivery_route" DeleteCommandType="StoredProcedure" InsertCommand="save_delivery_route" InsertCommandType="StoredProcedure" UpdateCommand="save_delivery_route" UpdateCommandType="StoredProcedure" OnDeleted="sql_delivery_route_popup" OnInserted="sql_delivery_route_popup" OnUpdated="sql_delivery_route_popup" OnUpdating="sql_delivery_route_tran" OnDeleting="sql_delivery_route_tran" OnInserting="sql_delivery_route_tran"> <DeleteParameters> <asp:Parameter Name="delivery_route" Type="String" /> <asp:Parameter Direction="InputOutput" Name="success" Type="Boolean" /> <asp:Parameter Name="o_msg_num" Type="Int32" Direction="InputOutput" Size="10" /> <asp:Parameter Name="o_add_info" Type="String" Direction="InputOutput" DefaultValue="" Size="3000" /> </DeleteParameters> <InsertParameters> <asp:Parameter Name="delivery_route" Type="String" /> <asp:Parameter Name="description" Type="String" /> <asp:SessionParameter Name="i_updated_by" SessionField="username" Type="String" /> <asp:SessionParameter Name="i_created_by" SessionField="username" Type="String" /> <asp:Parameter Name="success" Type="Boolean" Direction="InputOutput" DefaultValue="false" /> <asp:Parameter Name="o_msg_num" Type="Int32" Direction="InputOutput" Size="10" /> <asp:Parameter Name="o_add_info" Type="String" Direction="InputOutput" DefaultValue="" Size="3000" /> </InsertParameters> <UpdateParameters> <asp:Parameter Name="delivery_route" Type="String" /> <asp:Parameter Name="description" Type="String" /> <asp:SessionParameter Name="i_updated_by" SessionField="username" Type="String" /> <asp:SessionParameter Name="i_created_by" SessionField="username" Type="String" /> <asp:Parameter Name="success" Type="Boolean" Direction="InputOutput" DefaultValue="false" /> <asp:Parameter Name="o_msg_num" Type="Int32" Direction="InputOutput" Size="10" /> <asp:Parameter Name="o_add_info" Type="String" Direction="InputOutput" DefaultValue="" Size="3000" /> </UpdateParameters> </asp:SqlDataSource> <asp:SqlDataSource ID="Sql_filter" runat="server" ConnectionString="<%$ ConnectionStrings:mainConnection%>"></asp:SqlDataSource> <dx:ASPxPopupControl ID="ASPxPopupControl2" runat="server" ClientInstanceName="msg_popup" ShowLoadingPanel="true" Theme="Aqua" ShowMaximizeButton="true" ContentUrl="javascript:void(0);" Width="400px" CloseAction="CloseButton" PopupHorizontalAlign="WindowCenter" PopupVerticalAlign="Above" MaxHeight="200px"> <ContentCollection> <dx:PopupControlContentControl ID="PopupControlContentControl1" runat="server"> </dx:PopupControlContentControl> </ContentCollection> <ClientSideEvents CloseUp="function(s,e){msg_popup.Hide();}" /> </dx:ASPxPopupControl> </div> </form> </body> </html> Save C# (.cs) File using DevExpress.Web.ASPxGridView; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; using System.Data.SqlClient; using System.Data.Common; using DevExpress.Web.ASPxEditors; public partial class master_files_delivery_route : System.Web.UI.Page { string asn_no, str_success, msg_num, g_messge, add_info; public SystemInfo sys; protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Label_setting(); FormatDate(); } gv_delivery_route_d.JSProperties["cperror_msg_num"] = -1; //nilai default - tidak ada kesalahan /error } protected void gv_delivery_route_RowValidating(object sender, DevExpress.Web.Data.ASPxDataValidationEventArgs e) { if (e.NewValues["delivery_route"] == null) { AddError(e.Errors, gv_delivery_route.Columns["delivery_route"], "Delivery route is required."); gv_delivery_route.JSProperties["cperror_add_info"] = "error"; } if (e.NewValues["description"] == null) { AddError(e.Errors, gv_delivery_route.Columns["description"], "Description is required."); gv_delivery_route.JSProperties["cperror_add_info"] = "error"; } } private void FormatDate() { string dateformat = Session["date_format_desc"].ToString(); //gv_delivery_route GridViewDataDateColumn col_created = gv_delivery_route.Columns["created_date"] as GridViewDataDateColumn; if (col_created != null) { col_created.PropertiesDateEdit.DisplayFormatString = dateformat; } GridViewDataDateColumn col_updated = gv_delivery_route.Columns["updated_date"] as GridViewDataDateColumn; if (col_updated != null) { col_updated.PropertiesDateEdit.DisplayFormatString = dateformat; } //gv_delivery_route_d GridViewDataDateColumn col_created1 = gv_delivery_route.Columns["created_date"] as GridViewDataDateColumn; if (col_created1 != null) { col_created1.PropertiesDateEdit.DisplayFormatString = dateformat; } GridViewDataDateColumn col_updated1 = gv_delivery_route.Columns["updated_date"] as GridViewDataDateColumn; if (col_updated1 != null) { col_updated1.PropertiesDateEdit.DisplayFormatString = dateformat; } } void AddError(Dictionary errors, GridViewColumn column, string errorText) { if (errors.ContainsKey(column)) return; errors[column] = errorText; } private void Label_setting() { DataSet ds = new DataSet(); String sysMsg; DataTable dtLabelNum = new DataTable(); dtLabelNum.Columns.Add("lblNum", typeof(int)); DataTable dtLabelTabCol = new DataTable(); //details dtLabelTabCol.Columns.Add("table_column", typeof(string)); dtLabelTabCol.Rows.Add("delivery_route_d.delivery_route"); dtLabelTabCol.Rows.Add("delivery_route_d.delivery_zone"); dtLabelTabCol.Rows.Add("delivery_route_d.description"); dtLabelTabCol.Rows.Add("delivery_route_d.load_seq"); dtLabelTabCol.Rows.Add("delivery_route_d.updated_by"); dtLabelTabCol.Rows.Add("delivery_route_d.updated_date"); dtLabelTabCol.Rows.Add("delivery_route_d.created_by"); dtLabelTabCol.Rows.Add("delivery_route_d.created_date"); dtLabelTabCol.Rows.Add("delivery_zone.zone_group"); dtLabelTabCol.Rows.Add("delivery_zone.zone_sub_group"); //header dtLabelTabCol.Rows.Add("delivery_route.updated_by"); dtLabelTabCol.Rows.Add("delivery_route.updated_date"); dtLabelTabCol.Rows.Add("delivery_route.created_by"); dtLabelTabCol.Rows.Add("delivery_route.created_date"); dtLabelTabCol.Rows.Add("delivery_route.description"); dtLabelTabCol.Rows.Add("delivery_route.delivery_route"); dtLabelNum.Rows.Add(6077); string owner_code = Session["default_owner_code"].ToString(); string whs_code = Session["default_whs_code"].ToString(); try { sys = new SystemInfo(); ds = sys.Select_GetLabelByNum(dtLabelNum, dtLabelTabCol, owner_code, whs_code); gv_delivery_route_d.Columns["i_delivery_zone"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.delivery_zone", ds); gv_delivery_route_d.Columns["load_seq"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.load_seq", ds); gv_delivery_route_d.Columns["description"].Caption = SystemInfo.GetLabelByTabCol("delivery_route.description", ds); gv_delivery_route_d.Columns["zone_group"].Caption = SystemInfo.GetLabelByTabCol("delivery_zone.zone_group", ds); gv_delivery_route_d.Columns["zone_sub_group"].Caption = SystemInfo.GetLabelByTabCol("delivery_zone.zone_sub_group", ds); gv_delivery_route_d.Columns["updated_by"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.updated_by", ds); gv_delivery_route_d.Columns["updated_date"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.updated_date", ds); gv_delivery_route_d.Columns["created_by"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.created_by", ds); gv_delivery_route_d.Columns["created_date"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.created_date", ds); gv_delivery_route.Columns["delivery_route"].Caption = SystemInfo.GetLabelByTabCol("delivery_route.delivery_route", ds); gv_delivery_route.Columns["description"].Caption = SystemInfo.GetLabelByTabCol("delivery_route.description", ds); gv_delivery_route.Columns["created_by"].Caption = SystemInfo.GetLabelByTabCol("delivery_route.created_by", ds); gv_delivery_route.Columns["created_date"].Caption = SystemInfo.GetLabelByTabCol("delivery_route.created_date", ds); gv_delivery_route.Columns["updated_by"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.updated_by", ds); gv_delivery_route.Columns["updated_date"].Caption = SystemInfo.GetLabelByTabCol("delivery_route_d.updated_date", ds); //mandatory delivery route if (SystemInfo.GetMandatoryByTabCol("delivery_route.delivery_route", ds)) ((GridViewDataTextColumn)gv_delivery_route.Columns["delivery_route"]).PropertiesEdit.Style.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFEF97"); if (SystemInfo.GetMandatoryByTabCol("delivery_route.description", ds)) ((GridViewDataTextColumn)gv_delivery_route.Columns["description"]).PropertiesEdit.Style.BackColor = System.Drawing.ColorTranslator.FromHtml("#FFEF97"); DataTable dt = new DataTable(); dt = sys.Select_Getdate_Format(Session["date_format"].ToString()); ((GridViewDataDateColumn)gv_delivery_route_d.Columns["created_date"]).PropertiesDateEdit.DisplayFormatString = dt.Rows[0]["description2"].ToString() + " " + dt.Rows[0]["time_format"].ToString(); ((GridViewDataDateColumn)gv_delivery_route_d.Columns["updated_date"]).PropertiesDateEdit.DisplayFormatString = dt.Rows[0]["description2"].ToString() + " " + dt.Rows[0]["time_format"].ToString(); //add new button btn_add_delivery_route_d.Text = btn_new_row.Text = SystemInfo.GetLabelByNum(6077, ds); int page_row_size = 0; page_row_size = sys.GetRowPerPage(Session["default_owner_code"].ToString(), Session["default_whs_code"].ToString()); gv_delivery_route.SettingsPager.PageSize = page_row_size; gv_delivery_route_d.SettingsPager.PageSize = page_row_size; } catch (Exception ex) { sysMsg = ex.ToString(); Response.Write(sysMsg); } } protected void sql_delivery_route_popup(object sender, SqlDataSourceStatusEventArgs e) { Boolean success; Int32 msgNum; string addinfo; // Pastikan koneksi database terbuka if (e.Command.Connection.State.Equals("Closed")) e.Command.Connection.Open(); if (e.Command.Transaction == null) e.Command.Transaction = e.Command.Connection.BeginTransaction(); try { success = Convert.ToBoolean(e.Command.Parameters["@success"].Value); msgNum = Convert.ToInt32(e.Command.Parameters["@o_msg_num"].Value); addinfo = Convert.ToString(e.Command.Parameters["@o_add_info"].Value); if (success) { //coomit jika sukses e.Command.Transaction.Commit(); // Mengirimkan informasi sukses ke client-side menggunakan JSProperties gv_delivery_route.JSProperties["cperror_msg_num"] = msgNum; gv_delivery_route.JSProperties["cperror_add_info"] = addinfo; } else { // Jika operasi gagal, rollback transaksi if (e.Command.Transaction != null) { e.Command.Transaction.Rollback(); } // Mengirimkan informasi kesalahan ke client-side menggunakan JSProperties gv_delivery_route.JSProperties["cperror_msg_num"] = msgNum; gv_delivery_route.JSProperties["cperror_add_info"] = addinfo; } } catch (Exception ex) { //// Jika terjadi error, batalkan transaksi dan lemparkan exception if (e.Command.Transaction != null) e.Command.Transaction.Dispose(); throw (ex); } finally { // Pastikan transaksi dibersihkan setelah selesai if (e.Command.Transaction != null) e.Command.Transaction.Dispose(); } } protected void gv_delivery_route_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e) { // Mengecek apakah sedang mengedit baris baru if (gv_delivery_route.IsNewRowEditing) { // Mengecek apakah kolom yang diedit adalah kolom "delivery_route" if (e.Column.FieldName == "delivery_route") // Membuat editor kolom "delivery_route" menjadi bisa diedit e.Editor.ReadOnly = false; else return; // Jika kolom yang diedit bukan "delivery_route", tidak ada tindakan lebih lanjut } else return; } protected void gv_delivery_route_Init(object sender, EventArgs e) { //Mendapatkan pesan konfirmasi penghapusan berdasarkan ID pesan (262) dan bahasa yang dipilih oleh pengguna string label = SystemInfo.errorMsg(262, (string)Session["language"]); ASPxGridView grid_ln = (ASPxGridView)sender; grid_ln.SettingsText.ConfirmDelete = label; } protected void sql_delivery_route_tran(object sender, SqlDataSourceCommandEventArgs e) { //open koneksi e.Command.Connection.Open(); // Memulai transaksi pada koneksi yang terbuka e.Command.Transaction = e.Command.Connection.BeginTransaction(); } protected void gv_delivery_route_d_CustomCallback(object sender, ASPxGridViewCustomCallbackEventArgs e) { gv_delivery_route_d.DataBind(); } // Event handler untuk validasi baris baru protected void gv_delivery_route_d_RowValidating(object sender, DevExpress.Web.Data.ASPxDataValidationEventArgs e) { if (e.NewValues["i_delivery_zone"] == null) { AddError(e.Errors, gv_delivery_route.Columns["i_delivery_zone"], "Delivery Zone is required."); gv_delivery_route.JSProperties["cperror_add_info"] = "error"; } } protected void gv_delivery_route_d_Init(object sender, EventArgs e) { string label = SystemInfo.errorMsg(262, (string)Session["language"]); ASPxGridView grid_ln = (ASPxGridView)sender; grid_ln.SettingsText.ConfirmDelete = label; } protected void gv_delivery_route_d_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e) { if (gv_delivery_route_d.IsNewRowEditing) { if (e.Column.FieldName == "i_delivery_zone") e.Editor.ReadOnly = false; else return; } else return; if (e.Column.FieldName == "i_delivery_zone") { ASPxComboBox combo = e.Editor as ASPxComboBox; combo.ClientSideEvents.SelectedIndexChanged = "DeliveryZone_SelectedChanged"; } } protected void sql_delivery_route_d_deleted(object sender, SqlDataSourceStatusEventArgs e) { DbCommand command = e.Command; DbTransaction tx = command.Transaction; try { str_success = e.Command.Parameters["@o_succeed"].Value.ToString(); msg_num = e.Command.Parameters["@o_msg_num"].Value.ToString(); add_info = e.Command.Parameters["@o_add_info"].Value.ToString(); if ((bool)e.Command.Parameters["@o_succeed"].Value) { tx.Commit(); Show_Error_Detail("173", "~/images/ok-icon.png", ""); } else { tx.Rollback(); Show_Error_Detail(msg_num, "~/images/error_button.png", "Add Info [ " + add_info + " ]"); } } catch (Exception ex) { if (e.Command.Transaction != null) { e.Command.Transaction.Dispose(); e.Command.Connection.Close(); } throw (ex); } finally { if (e.Command.Transaction != null) { e.Command.Transaction.Dispose(); e.Command.Connection.Close(); } } } protected void sql_delivery_route_d_inserted(object sender, SqlDataSourceStatusEventArgs e) { DbCommand command = e.Command; DbTransaction tx = command.Transaction; try { str_success = e.Command.Parameters["@o_succeed"].Value.ToString(); msg_num = e.Command.Parameters["@o_msg_num"].Value.ToString(); add_info = e.Command.Parameters["@o_add_info"].Value.ToString(); if ((bool)e.Command.Parameters["@o_succeed"].Value) { tx.Commit(); Show_Error_Detail("170", "~/images/ok-icon.png", ""); } else { tx.Rollback(); Show_Error_Detail(msg_num, "~/images/error_button.png", "Add Info [ " + add_info + " ]"); } } catch (Exception ex) { if (e.Command.Transaction != null) { e.Command.Transaction.Dispose(); e.Command.Connection.Close(); } throw (ex); } finally { if (e.Command.Transaction != null) { e.Command.Transaction.Dispose(); e.Command.Connection.Close(); } } } protected void sql_delivery_route_d_updated(object sender, SqlDataSourceStatusEventArgs e) { DbCommand command = e.Command; DbTransaction tx = command.Transaction; try { str_success = e.Command.Parameters["@o_succeed"].Value.ToString(); msg_num = e.Command.Parameters["@o_msg_num"].Value.ToString(); add_info = e.Command.Parameters["@o_add_info"].Value.ToString(); if ((bool)e.Command.Parameters["@o_succeed"].Value) { tx.Commit(); Show_Error_Detail("171", "~/images/ok-icon.png", ""); } else { tx.Rollback(); Show_Error_Detail(msg_num, "~/images/error_button.png", "Add Info [ " + add_info + " ]"); } } catch (Exception ex) { if (e.Command.Transaction != null) { e.Command.Transaction.Dispose(); e.Command.Connection.Close(); } throw (ex); } finally { if (e.Command.Transaction != null) { e.Command.Transaction.Dispose(); e.Command.Connection.Close(); } } } protected void sql_delivery_route_d_tran(object sender, SqlDataSourceCommandEventArgs e) { e.Command.Parameters["@i_delivery_route"].Value = gv_delivery_route.GetRowValues(gv_delivery_route.FocusedRowIndex, "delivery_route").ToString(); DbCommand command = e.Command; DbConnection cx = command.Connection; cx.Open(); DbTransaction tx = cx.BeginTransaction(); command.Transaction = tx; } public void Show_Error(string msgnum, string Url, string AddInfo) { gv_delivery_route.JSProperties["cperror_msg_num"] = msgnum; gv_delivery_route.JSProperties["cperror_add_info"] = AddInfo; gv_delivery_route.JSProperties["cperror_image_url"] = Url; } public void Show_Error_Detail(string msgnum, string Url, string AddInfo) { gv_delivery_route_d.JSProperties["cperror_msg_num"] = msgnum; gv_delivery_route_d.JSProperties["cperror_add_info"] = AddInfo; gv_delivery_route_d.JSProperties["cperror_image_url"] = Url; } protected void sql_delivery_route_d_Selecting(object sender, SqlDataSourceSelectingEventArgs e) { object values = gv_delivery_route.GetRowValues(gv_delivery_route.FocusedRowIndex, new string[] { "delivery_route" }); string focusrow = (values == null) ? null : values.ToString(); e.Command.Parameters["@i_delivery_route"].Value = focusrow; } protected void cbo_delivery_zone_ItemsRequestedByFilterCondition(object source, ListEditItemsRequestedByFilterConditionEventArgs e) { ASPxComboBox comboBox_zone = (ASPxComboBox)source; //// Memeriksa apakah permintaan berasal dari callback dan jika halaman sedang melakukan postback if (comboBox_zone.IsCallback && Page.IsPostBack) { comboBox_zone.Items.Clear(); //hapus yang ada sebelum input baru Sql_filter.SelectParameters.Clear(); Sql_filter.SelectCommand = "wm_select_delivery_zone"; Sql_filter.SelectCommandType = SqlDataSourceCommandType.StoredProcedure; Sql_filter.SelectParameters.Add("zone", TypeCode.String, string.Format("%{0}%", e.Filter)); Sql_filter.SelectParameters.Add("startIndex", TypeCode.Int64, (e.BeginIndex + 1).ToString()); Sql_filter.SelectParameters.Add("endIndex", TypeCode.Int64, (e.EndIndex + 9).ToString()); //DataView dv = (DataView)Sql_filter.Select(DataSourceSelectArguments.Empty); comboBox_zone.DataSource = Sql_filter; comboBox_zone.DataBind(); } } protected void cbo_delivery_zone_ItemRequestedByValue(object source, ListEditItemRequestedByValueEventArgs e) { } protected void gv_delivery_route_d_CommandButtonInitialize(object sender, ASPxGridViewCommandButtonEventArgs e) { if (e.ButtonType == DevExpress.Web.ASPxGridView.ColumnCommandButtonType.Edit) e.Visible = false; } }
Comments