/*---------------------------------------------------------------*/ /* Сохранение операции ----------------------------------------- */ void SaveOperation() { // При создании новой операции if (this.Text == "Новая операция.") { if (ClassOperations.OperationAdd(dateTimePicker1.Text, textBox3.Text, textBox4.Text, textBox5.Text, textBox6.Text, textBox2.Text)) { Close(); } else { MessageBox.Show("Ошибка сохранения данных.", "Ошибка:"); } } // При изменении операции if (this.Text == "Изменить операцию.") { if (ClassOperations.OperationEdit(dateTimePicker1.Text, textBox3.Text, textBox4.Text, textBox5.Text, textBox6.Text, textBox2.Text, textBox1.Text)) { Close(); } else { MessageBox.Show("Ошибка сохранения данных.", "Ошибка:"); } } }
/*--------------------------------------------------------------------*/ /* Удалить операцию ------------------------------------------------- */ void DeleteOperation() { if (listView1.SelectedIndices.Count > 0) { if (ClassConfig.Rapid_Client_UserRight == "admin") { if (MessageBox.Show("Удалить операцию?", "Вопрос:", MessageBoxButtons.YesNo) == DialogResult.Yes) { String _docID = listView1.Items[listView1.SelectedIndices[0]].SubItems[7].Text.ToString(); String _id = listView1.Items[listView1.SelectedIndices[0]].SubItems[6].Text.ToString(); if (ClassOperations.OperationDelete(_docID, _id)) { MessageBox.Show("Операция удалена.", "Сообщение"); } } } else { MessageBox.Show("Извините но вы '" + ClassConfig.Rapid_Client_UserName + "' не обладаете достаточными правами для удаления операций.", "Сообщение"); ClassForms.Rapid_Client.MessageConsole("Операция: у вас недостаточно прав для удаления операции.", false); } } }
/*---------------------------------------------------------*/ /* Сохранить документ */ void SaveDoc() { // При создании новой записи if (this.Text == "Новая документ." || this.Text == "Ввод на основании Заказа.") { ComingMySQL.SqlCommand = "INSERT INTO journal (journal_id_doc, journal_date, journal_number, journal_user_autor, journal_type, journal_store, journal_firm_buyer, journal_firm_buyer_details, journal_firm_seller, journal_firm_seller_details, journal_staff_trade_representative, journal_typeTax, journal_sum, journal_tax, journal_total, journal_delete) " + "VALUES ('" + DocID + "', '" + dateTimePicker1.Text + "', '" + textBox1.Text + "', '" + label12.Text + "', 'Приходная Накладная', '" + textBox6.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox5.Text + "', '" + textBox4.Text + "', '', '" + ClassSelectConst.constantValue("Вид НДС") + "', " + labelSum.Text + ", " + labelNDS.Text + ", " + labelTotal.Text + ", 0)"; if (ComingMySQL.ExecuteNonQuery()) { if (ComingTS_MySQL.ExecuteUpdate(ComingTS_DataSet, "tabularsection")) { // ОСТАТКИ: Увеличение остатков ClassBalance.BalancePlus(ComingTS_DataSet); /* ОПЕРАЦИЯ: Создание бухгалтерской проводки * Приобретение товара * Оприходована партия товара 281 / 631 * Налоговый кредит (НДС) 641 / 631 * Погашена задолженность перед поставщиком 631 / 311 */ ClassOperations.OperationAdd(dateTimePicker1.Text, "28", "63", labelSum.Text, "Оприходована партия товара", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "64", "63", labelNDS.Text, "Налоговый кредит (НДС)", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "63", "31", labelTotal.Text, "Погашена задолженность перед поставщиком", DocID); // ИСТОРИЯ: Запись в журнал истории обновлений ClassServer.SaveUpdateInBase(9, DateTime.Now.ToString(), "", "Изменение записи.", ""); ClassForms.Rapid_Client.MessageConsole("Полный журнал: успешное создание нового документа Приходная Накладная.", false); // Закрыть окно Close(); } else { ClassForms.Rapid_Client.MessageConsole("Приходная Накладная: Ошибка сохранения табличной части.", true); } } else { ClassForms.Rapid_Client.MessageConsole("Приходная Накладная: Ошибка сохранения данных о документе в журнале документов.", true); } } // При изменении записи if (this.Text == "Изменить документ.") { ComingMySQL.SqlCommand = "UPDATE journal SET journal_date = '" + dateTimePicker1.Text + "', journal_number = '" + textBox1.Text + "', journal_user_autor = '" + ClassConfig.Rapid_Client_UserName + "', journal_store = '" + textBox6.Text + "', journal_firm_buyer = '" + textBox2.Text + "', journal_firm_buyer_details = '" + textBox3.Text + "', journal_firm_seller = '" + textBox5.Text + "', journal_firm_seller_details = '" + textBox4.Text + "', journal_staff_trade_representative = '', journal_sum = " + labelSum.Text + ", journal_tax = " + labelNDS.Text + ", journal_total = " + labelTotal.Text + " WHERE (id_journal = " + ActionID + ")"; if (ComingMySQL.ExecuteNonQuery()) { if (ComingTS_MySQL.ExecuteUpdate(ComingTS_DataSet, "tabularsection")) { // ОСТАТКИ: обновление остатков после изменений ClassBalance.BalanceUpdatePlus(OldDS, ComingTS_DataSet); /* ОПЕРАЦИЯ: Создание бухгалтерской проводки * Приобретение товара * Оприходована партия товара 281 / 631 * Налоговый кредит (НДС) 641 / 631 * Погашена задолженность перед поставщиком 631 / 311 */ ClassOperations.OperationDelete(DocID, ""); ClassOperations.OperationAdd(dateTimePicker1.Text, "28", "63", labelSum.Text, "Оприходована партия товара", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "64", "63", labelNDS.Text, "Налоговый кредит (НДС)", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "63", "31", labelTotal.Text, "Погашена задолженность перед поставщиком", DocID); // ИСТОРИЯ: Запись в журнал истории обновлений ClassServer.SaveUpdateInBase(9, DateTime.Now.ToString(), "", "Изменение записи.", ""); ClassForms.Rapid_Client.MessageConsole("Полный журнал: успешное сохранены изменения документа Приходная Накладная.", false); // Закрыть окно Close(); } else { ClassForms.Rapid_Client.MessageConsole("Приходная Накладная: Ошибка сохранения табличной части.", true); } } else { ClassForms.Rapid_Client.MessageConsole("Приходная Накладная: Ошибка сохранения данных о документе в журнале документов.", true); } } }
/*---------------------------------------------------------*/ /* Сохранить документ */ void SaveDoc() { // При создании новой записи if (this.Text == "Новая документ." || this.Text == "Ввод на основании Заказа.") { ExpenseMySQL.SqlCommand = "INSERT INTO journal (journal_id_doc, journal_date, journal_number, journal_user_autor, journal_type, journal_store, journal_firm_buyer, journal_firm_buyer_details, journal_firm_seller, journal_firm_seller_details, journal_staff_trade_representative, journal_typeTax, journal_sum, journal_tax, journal_total, journal_delete) " + "VALUES ('" + DocID + "', '" + dateTimePicker1.Text + "', '" + textBox1.Text + "', '" + label12.Text + "', 'Расходная Накладная', '" + textBox6.Text + "', '" + textBox2.Text + "', '" + textBox3.Text + "', '" + textBox5.Text + "', '" + textBox4.Text + "', '" + textBox7.Text + "', '" + ClassSelectConst.constantValue("Вид НДС") + "', " + labelSum.Text + ", " + labelNDS.Text + ", " + labelTotal.Text + ", 0)"; if (ExpenseMySQL.ExecuteNonQuery()) { if (ExpenseTS_MySQL.ExecuteUpdate(ExpenseTS_DataSet, "tabularsection")) { // ОСТАТКИ: Уменьшение остатков ClassBalance.BalanceMinus(ExpenseTS_DataSet); /* ОПЕРАЦИЯ: Создание бухгалтерской проводки * Оптовая торговля * Отгружен товар покупателю и отражен доход от реализации 360 / 702 * Отражено налоговое обязательство по НДС 702 / 641 * Получена оплата от покупателя 311 / 361 */ ClassOperations.OperationAdd(dateTimePicker1.Text, "36", "70", labelSum.Text, "Отгружен товар покупателю, доход от реализации", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "70", "64", labelNDS.Text, "Отражено налоговое обязательство по НДС", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "31", "36", labelTotal.Text, "Получена оплата от покупателя", DocID); // ИСТОРИЯ: Запись в журнал истории обновлений ClassServer.SaveUpdateInBase(9, DateTime.Now.ToString(), "", "Изменение записи.", ""); ClassForms.Rapid_Client.MessageConsole("Полный журнал: успешное создание нового документа Расходная накладная.", false); // Закрыть окно Close(); } else { ClassForms.Rapid_Client.MessageConsole("Расходная Накладная: Ошибка сохранения табличной части.", true); } } else { ClassForms.Rapid_Client.MessageConsole("Расходная Накладная: Ошибка сохранения данных о документе в журнале документов.", true); } } // При изменении записи if (this.Text == "Изменить документ.") { ExpenseMySQL.SqlCommand = "UPDATE journal SET journal_date = '" + dateTimePicker1.Text + "', journal_number = '" + textBox1.Text + "', journal_user_autor = '" + ClassConfig.Rapid_Client_UserName + "', journal_store = '" + textBox6.Text + "', journal_firm_buyer = '" + textBox2.Text + "', journal_firm_buyer_details = '" + textBox3.Text + "', journal_firm_seller = '" + textBox5.Text + "', journal_firm_seller_details = '" + textBox4.Text + "', journal_staff_trade_representative = '" + textBox7.Text + "', journal_sum = " + labelSum.Text + ", journal_tax = " + labelNDS.Text + ", journal_total = " + labelTotal.Text + " WHERE (id_journal = " + ActionID + ")"; if (ExpenseMySQL.ExecuteNonQuery()) { if (ExpenseTS_MySQL.ExecuteUpdate(ExpenseTS_DataSet, "tabularsection")) { // ОСТАТКИ: обновление остатков после изменений ClassBalance.BalanceUpdateMinus(OldDS, ExpenseTS_DataSet); /* ОПЕРАЦИЯ: Создание бухгалтерской проводки * Оптовая торговля * Отгружен товар покупателю и отражен доход от реализации 360 / 702 * Отражено налоговое обязательство по НДС 702 / 641 * Получена оплата от покупателя 311 / 361 */ ClassOperations.OperationDelete(DocID, ""); ClassOperations.OperationAdd(dateTimePicker1.Text, "36", "70", labelSum.Text, "Отгружен товар покупателю, доход от реализации", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "70", "64", labelNDS.Text, "Отражено налоговое обязательство по НДС", DocID); ClassOperations.OperationAdd(dateTimePicker1.Text, "31", "36", labelTotal.Text, "Получена оплата от покупателя", DocID); // ИСТОРИЯ: Запись в журнал истории обновлений ClassServer.SaveUpdateInBase(9, DateTime.Now.ToString(), "", "Изменение записи.", ""); ClassForms.Rapid_Client.MessageConsole("Полный журнал: успешное сохранены изменения документа Расходная Накладная.", false); // Закрыть окно Close(); } else { ClassForms.Rapid_Client.MessageConsole("Расходная Накладная: Ошибка сохранения табличной части.", true); } } else { ClassForms.Rapid_Client.MessageConsole("Расходная Накладная: Ошибка сохранения данных о документе в журнале документов.", true); } } }