Exemplo n.º 1
0
        /*---------------------------------------------------------------*/

        /* Сохранение операции ----------------------------------------- */
        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("Ошибка сохранения данных.", "Ошибка:");
                }
            }
        }
Exemplo n.º 2
0
        /*--------------------------------------------------------------------*/

        /* Удалить операцию ------------------------------------------------- */
        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);
                }
            }
        }
Exemplo n.º 3
0
        /*---------------------------------------------------------*/

        /* Сохранить документ */
        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);
                }
            }
        }
Exemplo n.º 4
0
        /*---------------------------------------------------------*/

        /* Сохранить документ */
        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);
                }
            }
        }