Диплом: Автоматизация учета товаро-материальных ценностей в розничном магазине ООО "Эллада"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
121
NameValue[] NVReturn = new NameValue[] { new NameValue("Id_MH", 0),
new NameValue("MHName", ""), new NameValue("Id_US", 0), new
NameValue("USName", "") };
using (gMH F = new gMH(ZGridPanelStyle.ZSAll, ZGridPanelAlign.Top, "",
"Id_MH", true, NVFind, ref NVReturn, Program.FndList))
{
DialogResult DR = F.ShowDialog(this);
if ((DR == DialogResult.OK) || (DR == DialogResult.Yes))
{
Id_MH = (int)NVReturn[0].Value;
EMH.Text = string.Format("[{0}]{1}", Id_MH, NVReturn[1].Value);
Id_Prin = (int)NVReturn[2].Value;
EPrin.Text = string.Format("[{0}]{1}", Id_Prin, NVReturn[3].Value);
this.SelectNextControl(btPrin, true, true, true, true);
btSave.Enabled = this.CanSave();
}
}
}
private void zGridPnl_OnEditRow(object sender, ezEditRowEventArgs e)
{
if (TypOS==1 && 0 < zGridPnl.bs.Count && (e.Style == ezStyle.ezAdd ||
e.Style== ezStyle.ezAddEx))
{
IPY_Util.YNBox("Для ОС предусмотрено не более одного предмета
учёта в акте...");
}
else {
using (eOSA ED = new eOSA(zGridPnl.bs, (e.Style | ezStyle.ezCAS),
TypOS, Id_A))
{
ED.ShowDialog(this);
}
}
}
private void zGridPnl_OnRefreshComent(object sender, EventArgs e)
{
OSComent.Text = null;
if (DGV.DataSource != null)
{
IPY_BindingSource bs = (IPY_BindingSource)DGV.DataSource;
if ((bs.Current != null) && (bs.Current is DataRowView))
{
DataRow RW = ((DataRowView)bs.Current).Row;
OSComent.Text = RW["Coment"].ToString();
dsOS.taOM.FillByStrFLTR(dsOS.Tables["skl_OSMet"],
string.Format("Id_OS={0}", RW["Id_OS"]), "Id_DM");
122
}
else dsOS.Tables["skl_OSMet"].Clear();
}
}
private void btRPT_Click(object sender, EventArgs e)
{
int HN, HK, i, Npp;
string s, DTL, fname;
decimal m;
StringBuilder sb, xml, dtl;
DataRow RC, RX;
xTables.tOSMet_01 T;
NameValue[] NV, ND;
if (cbFrom.Items.Count > 0 && cbFrom.SelectedIndex >= 0)
try
{
sb = new StringBuilder();
xml = new StringBuilder();
fname = string.Format("{0}{1}", Application.StartupPath + "\\RPT\\",
FI[cbFrom.SelectedIndex].Name);
using (StreamReader sr = new StreamReader(fname,
Encoding.GetEncoding(1251)))
{
xml.Append(sr.ReadToEnd());
}
s = xml.ToString();
DTL = null; // -- нет поштучного раздела --
HN = s.IndexOf("[BeginDetail]");
if (HN >= 0)
{
HK = s.IndexOf("[EndDetail]");
if (HK >= 0)
{
HN = HN + 13;
DTL = s.Substring(HN, HK - HN);
xml.Remove(HN, HK - HN);
}
}
NV = NameValue.GetNewDTLNV(xml.ToString()); // Список замін
головної частини звіту
NameValue.SetValue(ref NV, "[DDoc]", string.Format("<Data
ss:Type=\"DateTime\">{0}</Data>", DTR.Value.Value.ToString("yyyy-MM-dd")));
NameValue.SetValue(ref NV, "[NDoc]", string.Format("{0}",
EName.Text));
123
//NameValue.SetValue(ref NV, "[ChoSpisano]", string.Format("{0}",
EChoSpis.Text));
RC = dsA.Tables["skl_MH"].Rows.Find(Id_Fr);
if (RC != null)
{
NameValue.SetValue(ref NV, "[FrName]",
RC["MHName"].ToString());
NameValue.SetValue(ref NV, "[FrKod]", RC["MHKod"].ToString());
}
RC = dsA.Tables["skl_MH"].Rows.Find(Id_MH);
if (RC != null)
{
NameValue.SetValue(ref NV, "[MHName]",
RC["MHName"].ToString());
NameValue.SetValue(ref NV, "[MHKod]", RC["MHKod"].ToString());
}
RC = dsA.Tables["skl_US"].Rows.Find(Id_Sdal);
if (RC != null)
{
NameValue.SetValue(ref NV, "[SdalName]",
RC["USName"].ToString());
NameValue.SetValue(ref NV, "[SdalMOL]",
RC["KodMOL"].ToString());
NameValue.SetValue(ref NV, "[SdalTN]", RC["TabNom"].ToString());
NameValue.SetValue(ref NV, "[SdalDolg]", RC["Dolg"].ToString());
}
RC = dsA.Tables["skl_US"].Rows.Find(Id_Prin);
if (RC != null)
{
NameValue.SetValue(ref NV, "[PrinName]",
RC["USName"].ToString());
NameValue.SetValue(ref NV, "[PrinMOL]",
RC["KodMOL"].ToString());
NameValue.SetValue(ref NV, "[PrinTN]", RC["TabNom"].ToString());
NameValue.SetValue(ref NV, "[PrinDolg]", RC["Dolg"].ToString());
}
if (string.IsNullOrEmpty(DTL)) // --- без Detail ---
{
Npp = 1;
RC = dsOS.Tables["skl_OS"].Rows[0];
NameValue.SetValue(ref NV, "[Npp]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", Npp));
NameValue.SetValue(ref NV, "[OSName]", RC["OSName"]);
NameValue.SetValue(ref NV, "[Coment]", RC["Coment"]);
NameValue.SetValue(ref NV, "[INom]", RC["INom"]);
NameValue.SetValue(ref NV, "[NNom]", RC["NNom"]);
124
NameValue.SetValue(ref NV, "[ZNom]", RC["ZNom"]);
NameValue.SetValue(ref NV, "[InDat]", string.Format("<Data
ss:Type=\"DateTime\">{0}</Data>",
IPY_Util.Int2Dat((int)RC["ZDat"]).ToString("yyyy-MM-dd")));
NameValue.SetValue(ref NV, "[ZDat]", string.Format("<Data
ss:Type=\"DateTime\">{0}</Data>",
IPY_Util.Int2Dat((int)RC["ZDat"]).ToString("yyyy-MM-dd")));
NameValue.SetValue(ref NV, "[Cnt]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", (int)RC["Cnt"]));
NameValue.SetValue(ref NV, "[Stoim]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", ((decimal)RC["Stoim"]).ToString("0.00",
Program.CIDot)));
NameValue.SetValue(ref NV, "[Suma]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", ((decimal)RC["Stoim"] *
(int)RC["Cnt"]).ToString("0.00", Program.CIDot)));
for (int x = 0; x < dsOS.Tables["skl_OSMet"].Rows.Count; x++)
{
RX = dsOS.Tables["skl_OSMet"].Rows[x];
m = 0;
if (!RX.IsNull("Masa")) m = (decimal)RX["Masa"];
NameValue.SetValue(ref NV
, string.Format("[Masa{0}]", RX["Id_DM"].ToString())
, string.Format("<Data ss:Type=\"Number\">{0}</Data>",
m.ToString("0.######", Program.CIDot)));
}
}
else // --- Detail ---
{
T = new xTables.tOSMet_01();
dtl = new StringBuilder();
for (int n = 0; n < dsOS.Tables["skl_OS"].Rows.Count; n++)
{
RC = dsOS.Tables["skl_OS"].Rows[n];
ND = NameValue.GetNewDTLNV(DTL); // Список замін
табличної частини звіту
NameValue.SetValue(ref ND, "[Npp]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", n + 1));
NameValue.SetValue(ref ND, "[OSName]", RC["OSName"]);
NameValue.SetValue(ref ND, "[Coment]", RC["Coment"]);
NameValue.SetValue(ref ND, "[INom]", RC["INom"]);
NameValue.SetValue(ref ND, "[NNom]", RC["NNom"]);
NameValue.SetValue(ref ND, "[ZNom]", RC["ZNom"]);
NameValue.SetValue(ref ND, "[InDat]", string.Format("<Data
ss:Type=\"DateTime\">{0}</Data>",
IPY_Util.Int2Dat((int)RC["ZDat"]).ToString("yyyy-MM-dd")));
NameValue.SetValue(ref ND, "[ZDat]", string.Format("<Data
ss:Type=\"DateTime\">{0}</Data>",
IPY_Util.Int2Dat((int)RC["ZDat"]).ToString("yyyy-MM-dd")));
125
NameValue.SetValue(ref ND, "[Cnt]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", (int)RC["Cnt"]));
NameValue.SetValue(ref ND, "[Stoim]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", ((decimal)RC["Stoim"]).ToString("0.00",
Program.CIDot)));
NameValue.SetValue(ref ND, "[Suma]", string.Format("<Data
ss:Type=\"Number\">{0}</Data>", ((decimal)RC["Stoim"] *
(int)RC["Cnt"]).ToString("0.00", Program.CIDot)));
dsOS.taOM.FillByStrFLTR(T
, string.Format("Id_OS={0}", RC["Id_OS"])
, "Id_DM");
for (int x = 0; x < T.Rows.Count; x++)
{
RX = T.Rows[x];
m = 0;
if (!RX.IsNull("Masa")) m = (decimal)RX["Masa"];
NameValue.SetValue(ref ND
, string.Format("[Masa{0}]", RX["Id_DM"].ToString())
, string.Format("<Data ss:Type=\"Number\">{0}</Data>",
m.ToString("0.######", Program.CIDot)));
}
s = DTL;
IPY_Util.RTFParseS(ref s, false, ND);
IPY_Util.RTFParseS(ref s, true, NV);
dtl.AppendLine(s);
}
if (dtl.Length == 0)
{
s = DTL;
IPY_Util.RTFParseS(ref s, true, NV);
dtl.AppendLine(DTL);
}
s = xml.ToString().Replace("[BeginDetail]", dtl.ToString());
}
IPY_Util.RTFParseS(ref s, true, NV);
xml.Length = 0;
xml.Append(s);
fname = string.Format("{0}{1}", Application.StartupPath + "\\OUT\\",
FI[cbFrom.SelectedIndex].Name);
StreamWriter F = new StreamWriter(fname, false,
Encoding.GetEncoding("windows-1251"));
F.Write(xml.ToString());
F.Close();
IPY_Util.YNBox(string.Format(Properties.Resources.ResourceManager.GetString("E
x_FileSaved"), fname));
System.Diagnostics.Process.Start(fname);
126
}
catch (Exception ex)
{
IPY_Util.YNBox(string.Format(" {0}: {1}",
Properties.Resources.ResourceManager.GetString("pb_Error"), ex.Message));
}
}
}
}
namespace Sklad
{
public partial class eKA : zEditX
{
public eKA(IPY_BindingSource BS, ezStyle eStyle)
: base(BS, (eStyle | ezStyle.ezMngBS))
{
InitializeComponent();
InitComponent();
InitFinished = true;
btSave.Enabled = this.CanSave();
}
protected override void InitBindings()
{ // для прибіндювання візуальних компонентів
((System.ComponentModel.ISupportInitialize)(bs)).BeginInit();
cbTypKA.DataSource = bs.DataSource;
cbTypKA.DisplayMember = "TypKA.XName";
cbTypKA.ValueMember = "TypKA.Id";
((System.ComponentModel.ISupportInitialize)(bs)).EndInit();
BindedOnce = true;
}
protected override void InitNotBindings()
{
if (!mode) EId.Text = R["Id_KA"].ToString();
EName.Text = R["KAName"].ToString();
EAdres.Text = R["Adres"].ToString();
EZKPO.Text = R["ZKPO"].ToString();
EIPN.Text = R["IPN"].ToString();
EComent.Text = R["Coment"].ToString();
if (R.IsNull("TypKA")) cbTypKA.SelectedValue = -1;
else cbTypKA.SelectedValue = (int)R["TypKA"];
}
protected override void PrepareNewRow()
{
R["Id_KA"] = -1;
127
R["TypKA"] = 0;
if ((BR != null) && (BR is DataRow))
{ // заповнити за зразком
R["TypKA"] = BR["TypKA"];
R["Adres"] = BR["Adres"];
}
}
protected override void PrepareToSave()
{
int i = 0;
if (cbTypKA.SelectedValue != null)
int.TryParse(cbTypKA.SelectedValue.ToString(), out i);
R["TypKA"] = i;
R["KAName"] = EName.Text.Trim();
R["Adres"] = EAdres.Text.Trim();
R["ZKPO"] = EZKPO.Text.Trim();
R["IPN"] = EIPN.Text.Trim();
R["Coment"] = EComent.Text.Trim();
}
protected override bool IsChanged()
{ // визначає чи змінював користувач дані на формі
bool RetValue = (
(R["KAName"].ToString() != EName.Text.Trim())
|| (R["Adres"].ToString() != EAdres.Text.Trim())
|| (R["ZKPO"].ToString() != EZKPO.Text.Trim())
|| (R["IPN"].ToString() != EIPN.Text.Trim())
|| (R["Coment"].ToString() != EComent.Text.Trim())
|| (!R["TypKA"].Equals(cbTypKA.SelectedValue))
);
return RetValue;
}
protected override bool CanSave()
{
EId.Enabled = mode;
bool RetValue = false;
if (InitFinished)
{
int i = -1;
if (cbTypKA.SelectedValue != null)
int.TryParse(cbTypKA.SelectedValue.ToString(), out i);
if (// перевірка на коректність-наявність мінімально необхідних даних
(EName.Text.Trim().Length > 0)
&& (i > 0)
&&
(
mode || // новий запис або
128
this.IsChanged() // є дані, що змінювались
)
)
RetValue = true;
// Попередження про обовязкові поля
EPNeeded = false;
EPSetError(EName, (EName.Text.Trim().Length > 0) ? "" :
Properties.Resources.ResourceManager.GetString("zEdit_EPReq"));
EPSetError(cbTypKA, (i > 0) ? "" :
Properties.Resources.ResourceManager.GetString("zEdit_EPReq"));
if ((EPNeeded) && (string.IsNullOrEmpty(EP.GetError(EPL))))
EP.SetError(EPL, EPL.Text);
}
return RetValue;
}
private void EName_TextChanged(object sender, EventArgs e)
{
btSave.Enabled = this.CanSave();
}
private void EName_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == 13) this.Enter2Tab(sender, e);
}
}
}
namespace Sklad
{
partial class eMH
{
//
// EdPanel
//
this.EdPanel.Controls.Add(this.EMHKod);
this.EdPanel.Controls.Add(this.lbMHK);
this.EdPanel.Controls.Add(this.btUS);
this.EdPanel.Controls.Add(this.EUS);
this.EdPanel.Controls.Add(this.lbUS);
this.EdPanel.Controls.Add(this.EId);
this.EdPanel.Controls.Add(this.lbId);
this.EdPanel.Controls.Add(this.EComent);
this.EdPanel.Controls.Add(this.lbComent);
this.EdPanel.Controls.Add(this.EDepart);
this.EdPanel.Controls.Add(this.lbDepart);
this.EdPanel.Controls.Add(this.EName);
this.EdPanel.Controls.Add(this.lbName);
this.EdPanel.Size = new System.Drawing.Size(568, 261);
129
//
// BtPanel
//
this.BtPanel.Location = new System.Drawing.Point(0, 261);
this.BtPanel.Size = new System.Drawing.Size(568, 38);
//
// btSave
//
this.btSave.Location = new System.Drawing.Point(459, 6);
//
// lbName
//
this.lbName.Location = new System.Drawing.Point(36, 51);
this.lbName.Margin = new System.Windows.Forms.Padding(3);
this.lbName.Name = "lbName";
this.lbName.Size = new System.Drawing.Size(116, 21);
this.lbName.TabIndex = 2;
this.lbName.Text = "Наименование";
this.lbName.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// EName
//
this.EName.Location = new System.Drawing.Point(156, 52);
this.EName.MaxLength = 50;
this.EName.Name = "EName";
this.EName.Size = new System.Drawing.Size(352, 20);
this.EName.TabIndex = 1;
this.EName.TextChanged += new
System.EventHandler(this.EName_TextChanged);
this.EName.KeyPress += new
System.Windows.Forms.KeyPressEventHandler(this.EName_KeyPress);
//
// EDepart
//
this.EDepart.Location = new System.Drawing.Point(156, 104);
this.EDepart.MaxLength = 50;
this.EDepart.Name = "EDepart";
this.EDepart.Size = new System.Drawing.Size(352, 20);
this.EDepart.TabIndex = 5;
this.EDepart.TextChanged += new
System.EventHandler(this.EName_TextChanged);
this.EDepart.KeyPress += new
System.Windows.Forms.KeyPressEventHandler(this.EName_KeyPress);
//
// lbDepart
//
this.lbDepart.Location = new System.Drawing.Point(36, 103);
this.lbDepart.Margin = new System.Windows.Forms.Padding(3);
130
this.lbDepart.Name = "lbDepart";
this.lbDepart.Size = new System.Drawing.Size(116, 21);
this.lbDepart.TabIndex = 10;
this.lbDepart.Text = "Подразделение";
this.lbDepart.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// EComent
//
this.EComent.Location = new System.Drawing.Point(156, 167);
this.EComent.MaxLength = 255;
this.EComent.Multiline = true;
this.EComent.Name = "EComent";
this.EComent.Size = new System.Drawing.Size(352, 52);
this.EComent.TabIndex = 12;
//
// lbComent
//
this.lbComent.Location = new System.Drawing.Point(64, 166);
this.lbComent.Margin = new System.Windows.Forms.Padding(3);
this.lbComent.Name = "lbComent";
this.lbComent.Size = new System.Drawing.Size(88, 21);
this.lbComent.TabIndex = 11;
this.lbComent.Text = "Примечание";
this.lbComent.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// EId
//
this.EId.Location = new System.Drawing.Point(156, 26);
this.EId.MaxLength = 0;
this.EId.Name = "EId";
this.EId.ReadOnly = true;
this.EId.Size = new System.Drawing.Size(104, 20);
this.EId.TabIndex = 14;
this.EId.TabStop = false;
//
// lbId
//
this.lbId.Location = new System.Drawing.Point(74, 26);
this.lbId.Margin = new System.Windows.Forms.Padding(3);
this.lbId.Name = "lbId";
this.lbId.Size = new System.Drawing.Size(78, 21);
this.lbId.TabIndex = 13;
this.lbId.Text = "ID";
this.lbId.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
//
// EUS
//
this.EUS.Location = new System.Drawing.Point(156, 139);

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)