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;
}
}