Esempio n. 1
0
        /// <summary>
        /// подтверждение отгрузки со склада
        /// </summary>
        public bool Confirm(int nUserConfirmID)
        {
            string _sqlCommand = "execute up_MovingsDocumentsConfirm @nMovingDocumentID, " +
                                 "@nUserConfirmID, " +
                                 "@nError output, @cErrorStr output ";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            _oCommand.CommandTimeout = 0;

            #region up_MovingsDocumentsConfirm parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nMovingDocumentID", SqlDbType.Int);
            _oParameter.Value = _ID;

            _oParameter       = _oCommand.Parameters.Add("@nUserConfirmID", SqlDbType.Int);
            _oParameter.Value = nUserConfirmID;

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorStr", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();
                if (_TableMovingsDocumentsGoods != null)
                {
                    RFMUtilities.DataTableToTempTable(_TableMovingsDocumentsGoods, "#MovingsDocumentsGoods", _Connect);
                }
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -11;
                _ErrorStr    = "Ошибка при попытке подтверждения документарного перемещения...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при подтверждении документарного перемещения...\r\n" + _oCommand.Parameters["@cErrorStr"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 2
0
        // -- REPORTS ---------------------------------------------------------------

        /// <summary>
        /// История операций с ячейками / контейнерами
        /// </summary>
        public bool ReportCellsFramesHistory
            (DataTable tableCells, DataTable tableFrames,
            DateTime?dDateBeg, DateTime?dDateEnd,
            bool bTraffics, bool bChanges,
            string sOwnersList, string sGoodsStatesList, string sPackingsList, string sUsersList)
        {
            ClearData();

            string     sqlSelect;
            SqlCommand _oCommand;

            try
            {
                _Connect.Open();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -1;
                _ErrorStr    = "Ошибка при соединении с сервером...\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            // по таблице ячеек
            if (tableCells.Rows.Count > 0)
            {
                // оставляем из переданной таблицы только одну колонку CellID
                for (int i = tableCells.Columns.Count - 1; i >= 0; i--)
                {
                    if (tableCells.Columns[i].ColumnName != "ID" &&
                        tableCells.Columns[i].ColumnName != "CellID")
                    {
                        tableCells.Columns.Remove(tableCells.Columns[i]);
                    }
                }
                if (!RFMUtilities.DataTableToTempTable(tableCells, "#CellsIDList", _Connect))
                {
                    RFMMessage.MessageBoxError("Ошибка при подготовке временной таблицы ячеек (история)...");
                    _Connect.Close();
                    return(false);
                }
            }
            else
            {
                sqlSelect = "if object_id('tempdb..#CellsIDList') is not Null " +
                            "drop table #CellsIDList";
                try
                {
                    _oCommand = new SqlCommand(sqlSelect, _Connect);
                    _oCommand.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    _ErrorNumber = -2;
                    _ErrorStr    = "Ошибка при очистке временной таблицы ячеек...\n" + ex.Message;
                    RFMMessage.MessageBoxError(_ErrorStr);
                    _Connect.Close();
                    return(false);
                }
            }

            if (tableFrames.Rows.Count > 0)
            {
                // оставляем из переданной таблицы только одну колонку FrameID
                for (int i = tableFrames.Columns.Count - 1; i >= 0; i--)
                {
                    if (tableFrames.Columns[i].ColumnName != "ID" &&
                        tableFrames.Columns[i].ColumnName != "FrameID")
                    {
                        tableFrames.Columns.Remove(tableFrames.Columns[i]);
                    }
                }
                if (!RFMUtilities.DataTableToTempTable(tableFrames, "#FramesIDList", _Connect))
                {
                    RFMMessage.MessageBoxError("Ошибка при подготовке временной таблицы контейнеров (история)...");
                    _Connect.Close();
                    return(false);
                }
            }
            else
            {
                sqlSelect = "if object_id('tempdb..#FramesIDList') is not Null " +
                            "drop table #FramesIDList";
                try
                {
                    _oCommand = new SqlCommand(sqlSelect, _Connect);
                    _oCommand.ExecuteNonQuery();
                }
                catch (Exception ex)
                {
                    _ErrorNumber = -3;
                    _ErrorStr    = "Ошибка при очистке временной таблицы контейнеров...\n" + ex.Message;
                    RFMMessage.MessageBoxError(_ErrorStr);
                    _Connect.Close();
                    return(false);
                }
            }

            sqlSelect = "execute up_ReportCellsFramesHistory " +
                        "@dDateBeg, @dDateEnd, " +
                        "@bTraffics, @bChanges, " +
                        "@cOwnersList, @cGoodsStatesList, " +
                        "@cPackingsList, @cUsersList";
            _oCommand = new SqlCommand(sqlSelect, _Connect);
            _oCommand.CommandTimeout = 0;

            #region up_ReportCellsFramesHistory paramaters

            _oCommand.Parameters.Add("@dDateBeg", SqlDbType.SmallDateTime);
            if (dDateBeg != null)
            {
                _oCommand.Parameters["@dDateBeg"].Value = dDateBeg;
            }
            else
            {
                _oCommand.Parameters["@dDateBeg"].Value = DBNull.Value;
            }
            _oCommand.Parameters.Add("@dDateEnd", SqlDbType.SmallDateTime);
            if (dDateEnd != null)
            {
                _oCommand.Parameters["@dDateEnd"].Value = dDateEnd;
            }
            else
            {
                _oCommand.Parameters["@dDateEnd"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@bTraffics", SqlDbType.Bit);
            _oCommand.Parameters["@bTraffics"].Value = bTraffics;

            _oCommand.Parameters.Add("@bChanges", SqlDbType.Bit);
            _oCommand.Parameters["@bChanges"].Value = bChanges;

            _oCommand.Parameters.Add("@cOwnersList", SqlDbType.VarChar);
            if (sOwnersList != null)
            {
                _oCommand.Parameters["@cOwnersList"].Value = sOwnersList;
            }
            else
            {
                _oCommand.Parameters["@cOwnersList"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cGoodsStatesList", SqlDbType.VarChar);
            if (sGoodsStatesList != null)
            {
                _oCommand.Parameters["@cGoodsStatesList"].Value = sGoodsStatesList;
            }
            else
            {
                _oCommand.Parameters["@cGoodsStatesList"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cPackingsList", SqlDbType.VarChar);
            if (sPackingsList != null)
            {
                _oCommand.Parameters["@cPackingsList"].Value = sPackingsList;
            }
            else
            {
                _oCommand.Parameters["@cPackingsList"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cUsersList", SqlDbType.VarChar);
            if (sUsersList != null)
            {
                _oCommand.Parameters["@cUsersList"].Value = sUsersList;
            }
            else
            {
                _oCommand.Parameters["@cUsersList"].Value = DBNull.Value;
            }

            #endregion

            try
            {
                _MainTable   = FillReadings(new SqlDataAdapter(_oCommand), _MainTable, _MainTableName);
                _NeedRequery = false;
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при получении истории ячеек/контейнеров...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 3
0
        // --------------------------------------------------------------------

        /// <summary>
        /// Операции транспортировки
        /// </summary>
        public bool ReportTraffics
            (string sMode,
            DataTable tableCellsSource, DataTable tableCellsTarget,
            DateTime?dDateBegBirth, DateTime?dDateEndBirth,
            DateTime?dDateBegConfirm, DateTime?dDateEndConfirm,
            bool?bConfirmed, bool?bSuccess, string sErrorsList,
            string sUsersList, string sDevicesList,
            string sFrameBarCodeContext,
            string sPackingsList
            )
        {
            ClearData();

            string     sqlSelect;
            SqlCommand _oCommand;
            bool       bConnectOpen = false;

            // по таблице ячеек-источников
            if (tableCellsSource.Rows.Count > 0)
            {
                if (!bConnectOpen)
                {
                    try
                    {
                        _Connect.Open();
                        bConnectOpen = true;
                    }
                    catch (Exception ex)
                    {
                        _ErrorNumber = -1;
                        _ErrorStr    = "Ошибка при соединении с сервером...\n" + ex.Message;
                        RFMMessage.MessageBoxError(_ErrorStr);
                        return(false);
                    }
                }
                // оставляем из переданной таблицы только одну колонку CellID
                for (int i = tableCellsSource.Columns.Count - 1; i >= 0; i--)
                {
                    if (tableCellsSource.Columns[i].ColumnName != "ID" &&
                        tableCellsSource.Columns[i].ColumnName != "CellID")
                    {
                        tableCellsSource.Columns.Remove(tableCellsSource.Columns[i]);
                    }
                }
                if (!RFMUtilities.DataTableToTempTable(tableCellsSource, "#CellsSourceIDList", _Connect))
                {
                    RFMMessage.MessageBoxError("Ошибка при подготовке временной таблицы ячеек-источников...");
                    return(false);
                }
            }

            // по таблице ячеек-приемников
            if (tableCellsTarget.Rows.Count > 0)
            {
                if (!bConnectOpen)
                {
                    try
                    {
                        _Connect.Open();
                    }
                    catch (Exception ex)
                    {
                        _ErrorNumber = -1;
                        _ErrorStr    = "Ошибка при соединении с сервером...\n" + ex.Message;
                        RFMMessage.MessageBoxError(_ErrorStr);
                        return(false);
                    }
                }
                // оставляем из переданной таблицы только одну колонку CellID
                for (int i = tableCellsTarget.Columns.Count - 1; i >= 0; i--)
                {
                    if (tableCellsTarget.Columns[i].ColumnName != "ID" &&
                        tableCellsTarget.Columns[i].ColumnName != "CellID")
                    {
                        tableCellsTarget.Columns.Remove(tableCellsTarget.Columns[i]);
                    }
                }
                if (!RFMUtilities.DataTableToTempTable(tableCellsTarget, "#CellsTargetIDList", _Connect))
                {
                    RFMMessage.MessageBoxError("Ошибка при подготовке временной таблицы ячеек-приемников...");
                    return(false);
                }
            }

            sqlSelect = "execute up_ReportTraffics " +
                        "@cMode, " +
                        "@dDateBegBirth, @dDateEndBirth, " +
                        "@dDateBegConfirm, @dDateEndConfirm, " +
                        "@bConfirmed, @bSuccess, @cErrorsList, " +
                        "@cUsersList, @cDevicesList, " +
                        "@cFrameBarCodeContext, " +
                        "@cPackingsList";
            _oCommand = new SqlCommand(sqlSelect, _Connect);
            _oCommand.CommandTimeout = 0;

            #region up_ReportTraffics paramaters

            _oCommand.Parameters.Add("@cMode", SqlDbType.VarChar);
            if (sMode != null)
            {
                _oCommand.Parameters["@cMode"].Value = sMode;
            }
            else
            {
                _oCommand.Parameters["@cMode"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@dDateBegBirth", SqlDbType.SmallDateTime);
            if (dDateBegBirth != null)
            {
                _oCommand.Parameters["@dDateBegBirth"].Value = dDateBegBirth;
            }
            else
            {
                _oCommand.Parameters["@dDateBegBirth"].Value = DBNull.Value;
            }
            _oCommand.Parameters.Add("@dDateEndBirth", SqlDbType.SmallDateTime);
            if (dDateEndBirth != null)
            {
                _oCommand.Parameters["@dDateEndBirth"].Value = dDateEndBirth;
            }
            else
            {
                _oCommand.Parameters["@dDateEndBirth"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@dDateBegConfirm", SqlDbType.SmallDateTime);
            if (dDateBegConfirm != null)
            {
                _oCommand.Parameters["@dDateBegConfirm"].Value = dDateBegConfirm;
            }
            else
            {
                _oCommand.Parameters["@dDateBegConfirm"].Value = DBNull.Value;
            }
            _oCommand.Parameters.Add("@dDateEndConfirm", SqlDbType.SmallDateTime);
            if (dDateEndConfirm != null)
            {
                _oCommand.Parameters["@dDateEndConfirm"].Value = dDateEndConfirm;
            }
            else
            {
                _oCommand.Parameters["@dDateEndConfirm"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@bConfirmed", SqlDbType.Bit);
            if (bConfirmed != null)
            {
                _oCommand.Parameters["@bConfirmed"].Value = bConfirmed;
            }
            else
            {
                _oCommand.Parameters["@bConfirmed"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@bSuccess", SqlDbType.Bit);
            if (bSuccess != null)
            {
                _oCommand.Parameters["@bSuccess"].Value = bSuccess;
            }
            else
            {
                _oCommand.Parameters["@bSuccess"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cErrorsList", SqlDbType.VarChar);
            if (sErrorsList != null)
            {
                _oCommand.Parameters["@cErrorsList"].Value = sErrorsList;
            }
            else
            {
                _oCommand.Parameters["@cErrorsList"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cUsersList", SqlDbType.VarChar);
            if (sUsersList != null)
            {
                _oCommand.Parameters["@cUsersList"].Value = sUsersList;
            }
            else
            {
                _oCommand.Parameters["@cUsersList"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cDevicesList", SqlDbType.VarChar);
            if (sDevicesList != null)
            {
                _oCommand.Parameters["@cDevicesList"].Value = sDevicesList;
            }
            else
            {
                _oCommand.Parameters["@cDevicesList"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cFrameBarCodeContext", SqlDbType.VarChar);
            if (sFrameBarCodeContext != null)
            {
                _oCommand.Parameters["@cFrameBarCodeContext"].Value = sFrameBarCodeContext;
            }
            else
            {
                _oCommand.Parameters["@cFrameBarCodeContext"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cPackingsList", SqlDbType.VarChar);
            if (sPackingsList != null)
            {
                _oCommand.Parameters["@cPackingsList"].Value = sPackingsList;
            }
            else
            {
                _oCommand.Parameters["@cPackingsList"].Value = DBNull.Value;
            }

            #endregion

            try
            {
                _MainTable   = FillReadings(new SqlDataAdapter(_oCommand), _MainTable, _MainTableName);
                _NeedRequery = false;
            }
            catch (Exception ex)
            {
                _ErrorNumber = -1;
                _ErrorStr    = "Ошибка при получении операций транспортировки/перемещения...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 4
0
        public bool SaveTariffs(ref int?nSalaryTariffID)
        {
            String _sqlCommand = "execute up_SalaryTariffsSave @nID output, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_SalaryTariffsSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nID", SqlDbType.Int);
            if (nSalaryTariffID.HasValue)
            {
                _oParameter.Value = nSalaryTariffID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }
            _oParameter.Direction = ParameterDirection.InputOutput;

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();
                RFMUtilities.DataTableToTempTable(TableSalaryTariffs, "#SalaryTariffs", _Connect);
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -52;
                _ErrorStr    = "Ошибка при сохранении тарифов...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении тарифов...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании новой записи - получим ее код
                if (nSalaryTariffID == 0 && _oCommand.Parameters["@nID"].Value != DBNull.Value)
                {
                    nSalaryTariffID = (int)_oCommand.Parameters["@nID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 5
0
        /// <summary>
        /// сохранение данных пользователя
        /// </summary>
        public bool SaveData(int nUserID)
        {
            if (_MainTable.Rows.Count == 0 || _MainTable.Rows[0] == null)
            {
                _ErrorNumber = -20;
                _ErrorStr    = "Не заданы параметры пользователя...";
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            DataRow r = _MainTable.Rows[0];

            try
            {
                _Connect.Open();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -1;
                _ErrorStr    = "Ошибка при соединении с сервером...\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            RFMUtilities.DataTableToTempTable(TableRolesForUser, "#RolesForUser", _Connect);

            string _sqlCommand = "execute up_UsersSave @nUserID output, " +
                                 "@cUserName, " +
                                 "@nBrigadeID, " +
                                 "@cPassword, " +
                                 "@cAlias, " +
                                 "@cLocPath, @cNetPath, " +
                                 "@bIsAdmin, " +
                                 "@bActual, " +
                                 "@nHostID, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_UsersSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nUserID", SqlDbType.Int);
            _oParameter.Value     = nUserID;
            _oParameter.Direction = ParameterDirection.InputOutput;

            _oParameter       = _oCommand.Parameters.Add("@cUserName", SqlDbType.VarChar);
            _oParameter.Value = r["Name"].ToString();

            _oParameter = _oCommand.Parameters.Add("@nBrigadeID", SqlDbType.Int);
            if (r["BrigadeID"] != null && !Convert.IsDBNull(r["BrigadeID"]))
            {
                _oParameter.Value = Convert.ToInt32(r["BrigadeID"]);
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@cPassword", SqlDbType.VarChar);
            _oParameter.Value = r["Password"].ToString();

            _oParameter = _oCommand.Parameters.Add("@cAlias", SqlDbType.VarChar);
            if (r["Alias"] != null)
            {
                _oParameter.Value = r["Alias"].ToString();
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@cLocPath", SqlDbType.VarChar);
            _oParameter.Value = r["LocPath"].ToString();

            _oParameter       = _oCommand.Parameters.Add("@cNetPath", SqlDbType.VarChar);
            _oParameter.Value = r["NetPath"].ToString();

            _oParameter       = _oCommand.Parameters.Add("@bIsAdmin", SqlDbType.Bit);
            _oParameter.Value = Convert.ToBoolean(r["IsAdmin"]);

            _oParameter       = _oCommand.Parameters.Add("@bActual", SqlDbType.Bit);
            _oParameter.Value = Convert.ToBoolean(r["Actual"]);

            _oParameter = _oCommand.Parameters.Add("@nHostID", SqlDbType.Int);
            if (r["HostID"] != null && !Convert.IsDBNull(r["HostID"]))
            {
                _oParameter.Value = Convert.ToInt32(r["HostID"]);
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oCommand.Parameters["@nError"].Direction = ParameterDirection.InputOutput;
            _oCommand.Parameters["@nError"].Value     = 0;

            _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oCommand.Parameters["@cErrorText"].Direction = ParameterDirection.InputOutput;
            _oCommand.Parameters["@cErrorText"].Value     = "";

            #endregion

            try
            {
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при сохранении данных пользователя...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении данных пользователя...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового пользователя - получим его код
                if (nUserID == 0 && _oCommand.Parameters["@nUserID"].Value != DBNull.Value)
                {
                    _ID = (int)_oCommand.Parameters["@nUserID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 6
0
        public bool Medication(int nFrameID, DataTable tFrameContents,
                               int?nOwnerID, int?nGoodStateID,
                               int nCellID,
                               int?nUserID, int?nDeviceID,
                               string sNoteManual)
        {
            // создание и наполнение временной таблицы
            try
            {
                _Connect.Open();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -1;
                _ErrorStr    = "ќшибка при соединении с сервером...\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            if (!RFMUtilities.DataTableToTempTable(tFrameContents, "#CellsContents", _Connect))
            {
                RFMMessage.MessageBoxError("ќшибка при подготовке временной таблицы...");
                return(false);
            }


            // выполн¤ем хр_пр изменени¤ состо¤ни¤ контейнера
            string sqlSelect = "execute up_FramesMedication @nFrameID, " +
                               "@nOwnerID, @nGoodStateID, " +
                               "@nCellID, " +
                               "@nUserID, @nDeviceID, " +
                               "@cNoteManual, " +
                               "@nError output, @cErrorStr output";
            SqlCommand _oCommand = new SqlCommand(sqlSelect, _Connect);

            #region up_FramesMedication paramaters

            _oCommand.Parameters.Add("@nFrameID", SqlDbType.Int);
            _oCommand.Parameters["@nFrameID"].Value = nFrameID;

            _oCommand.Parameters.Add("@nOwnerID", SqlDbType.Int);
            if (nOwnerID.HasValue)
            {
                _oCommand.Parameters["@nOwnerID"].Value = nOwnerID;
            }
            else
            {
                _oCommand.Parameters["@nOwnerID"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@nGoodStateID", SqlDbType.Int);
            if (nGoodStateID.HasValue)
            {
                _oCommand.Parameters["@nGoodStateID"].Value = nGoodStateID;
            }
            else
            {
                _oCommand.Parameters["@nGoodStateID"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@nCellID", SqlDbType.Int);
            _oCommand.Parameters["@nCellID"].Value = nCellID;

            _oCommand.Parameters.Add("@nUserID", SqlDbType.Int);
            if (nUserID.HasValue)
            {
                _oCommand.Parameters["@nUserID"].Value = nUserID;
            }
            else
            {
                _oCommand.Parameters["@nUserID"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@nDeviceID", SqlDbType.Int);
            if (nDeviceID.HasValue)
            {
                _oCommand.Parameters["@nDeviceID"].Value = nDeviceID;
            }
            else
            {
                _oCommand.Parameters["@nDeviceID"].Value = DBNull.Value;
            }

            _oCommand.Parameters.Add("@cNoteManual", SqlDbType.VarChar);
            if (sNoteManual != null && sNoteManual.Length != 0)
            {
                _oCommand.Parameters["@cNoteManual"].Value = sNoteManual;
            }
            else
            {
                _oCommand.Parameters["@cNoteManual"].Value = "";
            }

            _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oCommand.Parameters["@nError"].Direction = ParameterDirection.InputOutput;
            _oCommand.Parameters["@nError"].Value     = 0;

            _oCommand.Parameters.Add("@cErrorStr", SqlDbType.VarChar, 200);
            _oCommand.Parameters["@cErrorStr"].Direction = ParameterDirection.InputOutput;
            _oCommand.Parameters["@cErrorStr"].Value     = "";

            #endregion

            try
            {
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -11;
                _ErrorStr    = "ќшибка при изменении состо¤ни¤ контейнера с кодом " + nFrameID.ToString() + "...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);                 // RaiseError
            }
            finally
            {
                _Connect.Close();
            }
            _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
            if (_ErrorNumber != 0)
            {
                _ErrorStr = "ќшибка при изменении состо¤ни¤ контейнера с кодом " + nFrameID.ToString() + "...\r\n" + _oCommand.Parameters["@cErrorStr"].Value;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 7
0
        /// <summary>
        /// сохранение данных документа
        /// </summary>
        public bool Save()
        {
            string _sqlCommand = "execute up_MovingsDocumentsSave @nMovingDocumentID output, " +
                                 "@nHostID, " +
                                 "@dDateMoving, " +
                                 "@nGoodStateSourceID, @nGoodStateTargetID, " +
                                 "@nOwnerSourceID, @nPartnerDetailSourceID, @nOwnerTargetID, @nPartnerDetailTargetID, " +
                                 "@cBillNumber, @nCurrencyID, @cNote, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_MovingsDocumentsSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nMovingDocumentID", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            if (_ID.HasValue)
            {
                _oParameter.Value = _ID;
            }
            else
            {
                _oParameter.Value = 0;
            }

            _oParameter       = _oCommand.Parameters.Add("@nHostID", SqlDbType.Int);
            _oParameter.Value = _HostID;

            _oParameter       = _oCommand.Parameters.Add("@dDateMoving", SqlDbType.SmallDateTime);
            _oParameter.Value = _DateMoving;

            _oParameter       = _oCommand.Parameters.Add("@nGoodStateSourceID", SqlDbType.Int);
            _oParameter.Value = _GoodStateSourceID;

            _oParameter       = _oCommand.Parameters.Add("@nGoodStateTargetID", SqlDbType.Int);
            _oParameter.Value = _GoodStateTargetID;

            _oParameter       = _oCommand.Parameters.Add("@nOwnerSourceID", SqlDbType.Int);
            _oParameter.Value = _OwnerSourceID;

            _oParameter       = _oCommand.Parameters.Add("@nPartnerDetailSourceID", SqlDbType.Int);
            _oParameter.Value = _PartnerDetailSourceID;

            _oParameter       = _oCommand.Parameters.Add("@nOwnerTargetID", SqlDbType.Int);
            _oParameter.Value = _OwnerTargetID;

            _oParameter       = _oCommand.Parameters.Add("@nPartnerDetailTargetID", SqlDbType.Int);
            _oParameter.Value = _PartnerDetailTargetID;

            _oParameter       = _oCommand.Parameters.Add("@cBillNumber", SqlDbType.VarChar);
            _oParameter.Value = _BillNumber;

            _oParameter       = _oCommand.Parameters.Add("@nCurrencyID", SqlDbType.Int);
            _oParameter.Value = _CurrencyID;

            _oParameter       = _oCommand.Parameters.Add("@cNote", SqlDbType.VarChar);
            _oParameter.Value = _Note;

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();

                // таблица товаров
                if (TableMovingsDocumentsGoods != null)
                {
                    RFMUtilities.DataTableToTempTable(TableMovingsDocumentsGoods, "#MovingsDocumentsGoods", _Connect);
                }

                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при попытке сохранения документарного перемещения...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении документарного перемещения...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового документарного перемещения - получим его код
                if ((!_ID.HasValue || _ID == 0) &&
                    !Convert.IsDBNull(_oCommand.Parameters["@nMovingDocumentID"].Value))
                {
                    _ID = (int)_oCommand.Parameters["@nMovingDocumentID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 8
0
        public bool Save(int?nUserCreateID)
        {
            string _sqlCommand = "execute up_TripsReturnsSave @nTripReturnID output, " +
                                 "@dDateReturn, " +
                                 "@bAutoCreated, " +
                                 "@nOwnerID, @nGoodStateID, " +
                                 "@cNote, " +
                                 "@nTripID, " +
                                 "@nUserCreateID, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_TripsReturnsSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nTripReturnID", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            if (_ID.HasValue)
            {
                _oParameter.Value = _ID;
            }
            else
            {
                _oParameter.Value = 0;
            }

            _oParameter       = _oCommand.Parameters.Add("@dDateReturn", SqlDbType.SmallDateTime);
            _oParameter.Value = _DateReturn;

            _oParameter       = _oCommand.Parameters.Add("@bAutoCreated", SqlDbType.Bit);
            _oParameter.Value = _AutoCreated;

            _oParameter = _oCommand.Parameters.Add("@nOwnerID", SqlDbType.Int);
            if (_OwnerID.HasValue)
            {
                _oParameter.Value = _OwnerID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nGoodStateID", SqlDbType.Int);
            if (_GoodStateID.HasValue)
            {
                _oParameter.Value = _GoodStateID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@cNote", SqlDbType.VarChar);
            if (_Note != null)
            {
                _oParameter.Value = _Note;
            }
            else
            {
                _oParameter.Value = "";
            }

            _oParameter = _oCommand.Parameters.Add("@nTripID", SqlDbType.Int);
            if (_TripID.HasValue)
            {
                _oParameter.Value = _TripID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nUserCreateID", SqlDbType.Int);
            if (nUserCreateID.HasValue)
            {
                _oParameter.Value = nUserCreateID;
            }
            else
            {
                _oParameter.Value = 0;                 // DBNull.Value;
            }
            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();

                // таблица товаров
                if (TableTripsReturnsGoods != null)
                {
                    RFMUtilities.DataTableToTempTable(TableTripsReturnsGoods, "#TripsReturnsGoods", _Connect);
                }

                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при попытке сохранения возврата...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении возврата...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового возврата - получим его код
                if ((!_ID.HasValue || _ID == 0) &&
                    !Convert.IsDBNull(_oCommand.Parameters["@nTripReturnID"].Value))
                {
                    _ID = (int)_oCommand.Parameters["@nTripReturnID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 9
0
        /*
         #region Table InventoriesErrors
         *
         * /// <summary>
         * /// заполнение таблицы ошибок ревизии (TableInventoriesErrors)
         * /// </summary>
         * public bool FillTableInventoriesErrors()
         * {
         *      string sqlSelect = "select ID, Name " +
         *                                                      "from InventoriesErrors with (nolock) " +
         *                                                      "order by ID";
         *      SqlCommand _oCommand = new SqlCommand(sqlSelect, _Connect);
         *
         *      try
         *      {
         *              _TableInventoriesErrors = FillReadings(new SqlDataAdapter(_oCommand), _TableInventoriesErrors, "TableInventoriesErrors");
         *
         *              // primarykey
         *              DataColumn[] pk = new DataColumn[1];
         *              pk[0] = _TableInventoriesErrors.Columns["ID"];
         *              _TableInventoriesErrors.PrimaryKey = pk;
         *      }
         *      catch (Exception ex)
         *      {
         *              _ErrorNumber = -7;
         *              _ErrorStr = "ќшибка при получении списка ошибок ревизии...\r\n" + ex.Message;
         *              RFMMessage.MessageBoxError(_ErrorStr);
         *      }
         *      return (_ErrorNumber == 0);
         * }
         *
         #endregion Table InventoriesErrors
         */

        #endregion Tables


        #region Save

        /// <summary>
        /// сохранение ревизии со списком ¤чеек
        /// </summary>
        public bool SaveData(int nInventoryID, DataTable tTable)
        {
            if (_MainTable.Rows.Count == 0 || _MainTable.Rows[0] == null)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ќет данных дл¤ сохранени¤ ревизии...";
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            // с использованием временной таблицы ¤чеек
            // разрешаем сохранить и без ¤чеек, только шапку

            /*
             * if (tTable.Rows.Count == 0)
             * {
             *      _ErrorNumber = -11;
             *      _ErrorStr = "Ќе выбраны ¤чейки дл¤ сохранени¤ ревизии...";
             *      RFMMessage.MessageBoxError(_ErrorStr);
             *      return (false);
             * }
             */

            // дл¤ шапки
            DataRow r = _MainTable.Rows[0];

            string _sqlCommand = "execute up_InventoriesSave @nInventoryID output, " +
                                 "@dDateInventory, @cNote, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_InventoriesSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nInventoryID", SqlDbType.Int);
            _oParameter.Value     = nInventoryID;
            _oParameter.Direction = ParameterDirection.InputOutput;

            _oParameter       = _oCommand.Parameters.Add("@dDateInventory", SqlDbType.DateTime);
            _oParameter.Value = DateTime.Parse(r["DateInventory"].ToString());

            _oParameter       = _oCommand.Parameters.Add("@cNote", SqlDbType.VarChar);
            _oParameter.Value = r["Note"].ToString();

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();
                RFMUtilities.DataTableToTempTable(tTable, "#InventoriesCells", _Connect);
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -12;
                _ErrorStr    = "ќшибка при сохранении ревизии...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "ќшибка при сохранении ревизии...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании новой ревизии - получим ее код
                if (nInventoryID == 0 && _oCommand.Parameters["@nInventoryID"].Value != DBNull.Value)
                {
                    _ID = (int)_oCommand.Parameters["@nInventoryID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 10
0
        public bool Save(int?nUserCreateID)
        {
            string _sqlCommand = "execute up_ActsSave @nActID output, " +
                                 "@nHostID, " +
                                 "@dDateAct, " +
                                 "@nOwnerID, @nGoodStateID, " +
                                 "@nInputID, @nOutputID, " +
                                 "@cNote, " +
                                 "@nUserCreateID, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_ActsSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nActID", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            if (_ID.HasValue)
            {
                _oParameter.Value = _ID;
            }
            else
            {
                _oParameter.Value = 0;
            }

            _oParameter       = _oCommand.Parameters.Add("@nHostID", SqlDbType.Int);
            _oParameter.Value = _HostID;

            _oParameter       = _oCommand.Parameters.Add("@dDateAct", SqlDbType.SmallDateTime);
            _oParameter.Value = _DateAct;

            _oParameter = _oCommand.Parameters.Add("@nOwnerID", SqlDbType.Int);
            if (_OwnerID.HasValue)
            {
                _oParameter.Value = _OwnerID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nGoodStateID", SqlDbType.Int);
            if (_GoodStateID.HasValue)
            {
                _oParameter.Value = _GoodStateID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nInputID", SqlDbType.Int);
            if (_InputID.HasValue)
            {
                _oParameter.Value = _InputID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nOutputID", SqlDbType.Int);
            if (_OutputID.HasValue)
            {
                _oParameter.Value = _OutputID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@cNote", SqlDbType.VarChar);
            if (_Note != null)
            {
                _oParameter.Value = _Note;
            }
            else
            {
                _oParameter.Value = "";
            }

            _oParameter = _oCommand.Parameters.Add("@nUserCreateID", SqlDbType.Int);
            if (nUserCreateID.HasValue)
            {
                _oParameter.Value = nUserCreateID;
            }
            else
            {
                _oParameter.Value = 0;                 // DBNull.Value;
            }
            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            // Проверка таблицы расшифровок
            if (TableActsGoods == null)
            {
                _ErrorNumber = -12;
                _ErrorStr    = "Ошибка при попытке сохранения акта...\r\n" + "Нулевая таблица расшифровок акта";
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }
            if (TableActsGoods.Rows.Count == 0)
            {
                _ErrorNumber = -11;
                _ErrorStr    = "Ошибка при попытке сохранения акта...\r\n" + "Пустая таблица расшифровок акта";
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            try
            {
                _Connect.Open();

                // таблица товаров
                if (TableActsGoods != null)
                {
                    RFMUtilities.DataTableToTempTable(TableActsGoods, "#ActsGoods", _Connect);
                }

                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при попытке сохранения акта...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении акта...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового акта - получим его код
                if ((!_ID.HasValue || _ID == 0) &&
                    !Convert.IsDBNull(_oCommand.Parameters["@nActID"].Value))
                {
                    _ID = (int)_oCommand.Parameters["@nActID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 11
0
        public bool Save(DataTable tableFillingsInWayBill, DataTable tableTripsInWayBill)
        {
            // присоединенные таблицы: заправки и рейсы
            try
            {
                _Connect.Open();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -1;
                _ErrorStr    = "Ошибка при соединении с сервером...\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            if (tableFillingsInWayBill != null)
            {
                RFMUtilities.DataTableToTempTable(tableFillingsInWayBill, "#FillingsInWayBill", _Connect);
            }
            if (tableTripsInWayBill != null)
            {
                RFMUtilities.DataTableToTempTable(tableTripsInWayBill, "#TripsInWayBill", _Connect);
            }

            string _sqlCommand = "execute up_WayBillsSave @nWayBillID output, " +
                                 "@cBillNumber, " +
                                 "@dDateWayBeg, @dDateWayEnd, " +
                                 "@nCarID, @nDriverEmployeeID, " +
                                 "@cDriverOther, @cReason, " +
                                 "@nSpeedometerDataBeg, @nSpeedometerDataEnd, " +
                                 "@nFuelDataBeg, @nFuelDataEnd, " +
                                 "@nFuelFreezerDataBeg, @nFuelFreezerDataEnd, " +
                                 "@nFuelQntFilled, " +
                                 "@nFreezerDurationMinutes, " +
                                 "@cNote, " +
                                 "@nUserCreateID, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_WayBillsSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nWayBillID", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            if (_ID.HasValue)
            {
                _oParameter.Value = _ID;
            }
            else
            {
                _oParameter.Value = 0;
            }

            _oParameter = _oCommand.Parameters.Add("@cBillNumber", SqlDbType.VarChar);
            if (_BillNumber != null)
            {
                _oParameter.Value = _BillNumber;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@nCarID", SqlDbType.Int);
            _oParameter.Value = _CarID;

            _oParameter       = _oCommand.Parameters.Add("@dDateWayBeg", SqlDbType.SmallDateTime);
            _oParameter.Value = _DateWayBeg;

            _oParameter       = _oCommand.Parameters.Add("@dDateWayEnd", SqlDbType.SmallDateTime);
            _oParameter.Value = _DateWayEnd;

            _oParameter       = _oCommand.Parameters.Add("@nDriverEmployeeID", SqlDbType.Int);
            _oParameter.Value = _DriverEmployeeID;

            _oParameter       = _oCommand.Parameters.Add("@cDriverOther", SqlDbType.VarChar);
            _oParameter.Value = _DriverOther;

            _oParameter       = _oCommand.Parameters.Add("@cReason", SqlDbType.VarChar);
            _oParameter.Value = _Reason;

            _oParameter = _oCommand.Parameters.Add("@nSpeedometerDataBeg", SqlDbType.Int);
            if (_SpeedometerDataBeg.HasValue)
            {
                _oParameter.Value = _SpeedometerDataBeg;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nSpeedometerDataEnd", SqlDbType.Int);
            if (_SpeedometerDataEnd.HasValue)
            {
                _oParameter.Value = _SpeedometerDataEnd;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nFuelDataBeg", SqlDbType.Decimal);
            _oParameter.Precision = 6;
            _oParameter.Scale     = 1;
            if (_FuelDataBeg.HasValue)
            {
                _oParameter.Value = _FuelDataBeg;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nFuelDataEnd", SqlDbType.Decimal);
            _oParameter.Precision = 6;
            _oParameter.Scale     = 1;
            if (_FuelDataEnd.HasValue)
            {
                _oParameter.Value = _FuelDataEnd;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nFuelFreezerDataBeg", SqlDbType.Decimal);
            _oParameter.Precision = 6;
            _oParameter.Scale     = 1;
            if (_FuelFreezerDataBeg.HasValue)
            {
                _oParameter.Value = _FuelFreezerDataBeg;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nFuelFreezerDataEnd", SqlDbType.Decimal);
            _oParameter.Precision = 6;
            _oParameter.Scale     = 1;
            if (_FuelFreezerDataEnd.HasValue)
            {
                _oParameter.Value = _FuelFreezerDataEnd;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nFuelQntFilled", SqlDbType.Decimal);
            _oParameter.Precision = 6;
            _oParameter.Scale     = 1;
            if (_FuelQntFilled.HasValue)
            {
                _oParameter.Value = _FuelQntFilled;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter = _oCommand.Parameters.Add("@nFreezerDurationMinutes", SqlDbType.Int);
            if (_FreezerDurationMinutes.HasValue)
            {
                _oParameter.Value = _FreezerDurationMinutes;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@cNote", SqlDbType.VarChar);
            _oParameter.Value = _Note;

            _oParameter = _oCommand.Parameters.Add("@nUserCreateID", SqlDbType.Int);
            if (_UserCreateID.HasValue)
            {
                _oParameter.Value = _UserCreateID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при сохранении путевого листа...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении путевого листа...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового пут.листа - получим его код
                if ((!_ID.HasValue || _ID == 0) &&
                    !Convert.IsDBNull(_oCommand.Parameters["@nWayBillID"].Value))
                {
                    _ID = (int)_oCommand.Parameters["@nWayBillID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 12
0
        /// <summary>
        /// сохранение данных пользователя
        /// </summary>
        public bool SaveOne()
        {
            if (_ID == null)
            {
                _ErrorNumber = -20;
                _ErrorStr    = "Не заданы параметры пользователя...";
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            try
            {
                _Connect.Open();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -1;
                _ErrorStr    = "Ошибка при соединении с сервером...\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            RFMUtilities.DataTableToTempTable(TableRolesForUser, "#RolesForUser", _Connect);

            string _sqlCommand = "execute up_UsersSave @nUserID output, " +
                                 "@cUserName, " +
                                 "@cPassword, " +
                                 "@cAlias, " +
                                 "@cLocPath, @cNetPath, " +
                                 "@bIsAdmin, " +
                                 "@nEmployeeID, " +
                                 "@bActual, " +
                                 "@nHostID, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_UsersSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nUserID", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = _ID;

            _oParameter       = _oCommand.Parameters.Add("@cUserName", SqlDbType.VarChar);
            _oParameter.Value = _Name;

            _oParameter       = _oCommand.Parameters.Add("@cPassword", SqlDbType.VarChar);
            _oParameter.Value = _Password;

            _oParameter = _oCommand.Parameters.Add("@cAlias", SqlDbType.VarChar);
            if (_Alias != null)
            {
                _oParameter.Value = _Alias;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@cLocPath", SqlDbType.VarChar);
            _oParameter.Value = _LocPath;

            _oParameter       = _oCommand.Parameters.Add("@cNetPath", SqlDbType.VarChar);
            _oParameter.Value = _NetPath;

            _oParameter       = _oCommand.Parameters.Add("@bIsAdmin", SqlDbType.Bit);
            _oParameter.Value = _IsAdmin;

            _oParameter = _oCommand.Parameters.Add("@nEmployeeID", SqlDbType.Int);
            if (_EmployeeID.HasValue)
            {
                _oParameter.Value = _EmployeeID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@bActual", SqlDbType.Bit);
            _oParameter.Value = _Actual;

            _oParameter = _oCommand.Parameters.Add("@nHostID", SqlDbType.Int);
            if (_HostID.HasValue)
            {
                _oParameter.Value = _HostID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при сохранении данных пользователя...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении данных пользователя...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового пользователя - получим его код
                if (_ID == 0 &&
                    !Convert.IsDBNull(_oCommand.Parameters["@nUserID"].Value))
                {
                    _ID = (int)_oCommand.Parameters["@nUserID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 13
0
        /// <summary>
        /// подтверждение перемещения
        /// </summary>
        public bool ConfirmData(int nMovingID, int nUserID)
        {
            string _sqlCommand = "execute up_MovingsConfirm @nMovingID, @nUserID, " +
                                 "@nError output, @cErrorStr output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            _oCommand.CommandTimeout = 0;

            #region up_MovingsConfirm parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nMovingID", SqlDbType.Int);
            _oParameter.Value = nMovingID;

            _oParameter       = _oCommand.Parameters.Add("@nUserID", SqlDbType.Int);
            _oParameter.Value = nUserID;

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorStr", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();
                RFMUtilities.DataTableToTempTable(TableMovingsGoods, "#MovingsGoods", _Connect);
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                // здесь возвращаются все ошибки, возникшие в ходе подтверждения. это нормально!

                /*
                 * _ErrorNumber = -11;
                 * _ErrorStr = "Ошибка при подтверждении перемещения...\r\n" + ex.Message;
                 * RFMMessage.MessageBoxError(_ErrorStr);
                 */
                RFMMessage.MessageBoxError(ex.Message);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при подтверждении перемещения...\r\n" + _oCommand.Parameters["@cErrorStr"].Value;
                    if (_ErrorNumber > 0)
                    {
                        RFMMessage.MessageBoxError(_ErrorStr);
                    }
                }
            }
            return(_ErrorNumber == 0);
        }
Esempio n. 14
0
        /// <summary>
        /// сохранение внутр.перемещения
        /// </summary>
        public bool SaveData(int nMovingID, int?nCellTargetID, int nUserID)
        {
            if (_MainTable.Rows.Count == 0 || _MainTable.Rows[0] == null)
            {
                _ErrorNumber = -20;
                _ErrorStr    = "Нет данных для сохранения внутр.перемещения...";
                RFMMessage.MessageBoxError(_ErrorStr);
                return(false);
            }

            DataRow r = _MainTable.Rows[0];

            String _sqlCommand = "execute up_MovingsSave @nMovingID output, " +
                                 "@dDateMoving, " +
                                 "@nMovingTypeID, " +
                                 "@nOwnerID, @nGoodStateID, @nGoodStateNewID, " +
                                 "@nCellSourceID, " +
                                 "@nCellTargetID, " +
                                 "@cNote, " +
                                 "@nUserID, " +
                                 "@nError output, @cErrorText output";
            SqlCommand _oCommand = new SqlCommand(_sqlCommand, _Connect);

            #region up_MovingsSave parameters

            SqlParameter _oParameter = _oCommand.Parameters.Add("@nMovingID", SqlDbType.Int);
            _oParameter.Value     = nMovingID;
            _oParameter.Direction = ParameterDirection.InputOutput;

            _oParameter       = _oCommand.Parameters.Add("@dDateMoving", SqlDbType.DateTime);
            _oParameter.Value = DateTime.Parse(r["DateMoving"].ToString());

            _oParameter       = _oCommand.Parameters.Add("@nMovingTypeID", SqlDbType.Int);
            _oParameter.Value = Convert.ToInt32(r["MovingTypeID"]);

            _oParameter = _oCommand.Parameters.Add("@nOwnerID", SqlDbType.Int);
            if (!Convert.IsDBNull(r["OwnerID"]))
            {
                _oParameter.Value = Convert.ToInt32(r["OwnerID"]);
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@nGoodStateID", SqlDbType.Int);
            _oParameter.Value = Convert.ToInt32(r["GoodStateID"]);

            _oParameter       = _oCommand.Parameters.Add("@nGoodStateNewID", SqlDbType.Int);
            _oParameter.Value = Convert.ToInt32(r["GoodStateNewID"]);

            _oParameter       = _oCommand.Parameters.Add("@nCellSourceID", SqlDbType.Int);
            _oParameter.Value = Convert.ToInt32(r["CellSourceID"]);

            _oParameter = _oCommand.Parameters.Add("@nCellTargetID", SqlDbType.Int);
            if (nCellTargetID.HasValue)
            {
                _oParameter.Value = nCellTargetID;
            }
            else
            {
                _oParameter.Value = DBNull.Value;
            }

            _oParameter       = _oCommand.Parameters.Add("@cNote", SqlDbType.VarChar);
            _oParameter.Value = r["Note"].ToString();

            _oParameter       = _oCommand.Parameters.Add("@nUserID", SqlDbType.Int);
            _oParameter.Value = nUserID;

            _oParameter           = _oCommand.Parameters.Add("@nError", SqlDbType.Int);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = 0;

            _oParameter           = _oCommand.Parameters.Add("@cErrorText", SqlDbType.VarChar, 200);
            _oParameter.Direction = ParameterDirection.InputOutput;
            _oParameter.Value     = "";

            #endregion

            try
            {
                _Connect.Open();
                // с использованием временной таблицы перемещений MovingsGoods
                RFMUtilities.DataTableToTempTable(TableMovingsGoods, "#MovingsGoods", _Connect);
                _oCommand.ExecuteScalar();
            }
            catch (Exception ex)
            {
                _ErrorNumber = -10;
                _ErrorStr    = "Ошибка при сохранении внутр.перемещения...\r\n" + ex.Message;
                RFMMessage.MessageBoxError(_ErrorStr);
            }
            finally
            {
                _Connect.Close();
            }
            if (_ErrorNumber == 0)
            {
                _ErrorNumber = (int)_oCommand.Parameters["@nError"].Value;
                if (_ErrorNumber != 0)
                {
                    _ErrorStr = "Ошибка при сохранении внутр.перемещения...\r\n" + _oCommand.Parameters["@cErrorText"].Value;
                    RFMMessage.MessageBoxError(_ErrorStr);
                }
                // при создании нового внутр.перемещения - получим его код
                if (nMovingID == 0 && _oCommand.Parameters["@nMovingID"].Value != DBNull.Value)
                {
                    _ID = (int)_oCommand.Parameters["@nMovingID"].Value;
                }
            }
            return(_ErrorNumber == 0);
        }