示例#1
0
        /// <summary>
        /// Przygotowanie rokordów do eksportu
        /// </summary>
        /// <param name="table">nazwa tabeli w bazie danych, z której pochodzą rekordy</param>
        /// <param name="aRecords">lista rekordów do eksportu</param>
        /// <param name="cPathTmp">ścieżka do pliku tmp</param>
        private void _createExport(TableCut table, List <RowObject> aRecords, string cPathTmp)
        {
            string        export  = "";
            List <string> aValues = new List <string>();

            foreach (RowObject row in aRecords)
            {
                aValues.Clear();

                foreach (object value in row.aCols.Values)
                {
                    if (System.DBNull.Value.Equals(value))
                    {
                        aValues.Add("null");
                    }
                    else
                    {
                        aValues.Add("'" + value.ToString().Replace(',', '.') + "'");
                    }
                }

                export += "INSERT INTO " + table.name + " (" + String.Join(", ", row.aCols.Keys) + ") VALUES (" + String.Join(", ", aValues) + ");\n";
            }

            this._tmpexport(cPathTmp, export);

            return;
        }
示例#2
0
        /// <summary>
        /// Pobranie listy rekordów do usunięcia
        /// </summary>
        /// <param name="table">nazwa tabeli w bazie danych, z której pochodzą rekordy</param>
        /// <param name="nLimit">limit rekordów</param>
        /// <param name="nOffset">od którego numeru rekordu zacząć</param>
        /// <returns>Lista rekordów do usunięcia</returns>
        private List <RowObject> _getRecordsCut(TableCut table, int nLimit)
        {
            List <RowObject> aRecords;

            switch (table.type)
            {
            case TableCut.Types.Pozycja:
                aRecords = this._pgSql.GetRecordsCutPositions(table.name, this._oUstawienia, nLimit);
                break;

            case TableCut.Types.Zlecenie:
                aRecords = this._pgSql.GetRecordsCutOrders(table.name, this._oUstawienia, nLimit);
                break;

            case TableCut.Types.Pracownik:
                aRecords = this._pgSql.GetRecordsCutEmployees(table.name, this._oUstawienia, nLimit);
                break;

            case TableCut.Types.Kartoteka:
                aRecords = this._pgSql.GetRecordsCutQuantity(table.name, this._oUstawienia, nLimit);
                break;

            case TableCut.Types.Towar:
                aRecords = this._pgSql.GetRecordsCutProducts(table.name, this._oUstawienia, nLimit);
                break;

            default:
                aRecords = new List <RowObject>();
                break;
            }

            return(aRecords);
        }
示例#3
0
        /// <summary>
        /// Usunięcie wybranych rekordów
        /// </summary>
        /// <param name="table">nazwa tabeli w bazie danych, z której pochodzą rekordy</param>
        /// <param name="aRecords">referencja do listy rekordów</param>
        /// <returns>Czy udąło się usunąć wszystkie rekordy</returns>
        private bool _deleteRecords(TableCut table, ref List <RowObject> aRecords)
        {
            List <RowObject> aDeleted = this._pgSql.DeleteRecords(table.name, table.colUniRow, aRecords);
            bool             lContains, lRet = true;

            int item1, item2;

            foreach (RowObject row in aRecords.ToList())
            {
                item1 = Convert.ToInt32(row.aCols[table.colUniRow]);
                this._log("- " + table.colUniRow + " == " + item1.ToString() + " : ", false);
                lContains = false;

                foreach (RowObject rowdel in aDeleted)
                {
                    item2 = Convert.ToInt32(rowdel.aCols[table.colUniRow]);
                    if (item2 == item1)
                    {
                        lContains = true;
                        break;
                    }
                }

                if (lContains)
                {
                    this._log(" USUNIĘTO");
                    this._countDeletedRec++;
                    this._sumDeletedRec++;
                }
                else
                {
                    this._log(" NIE MOŻNA USUNĄĆ REKORDU ( " + this._pgSql.Error + ")");
                    aRecords.Remove(row);
                    this._countProblemRec++;
                    this._sumProblemRec++;
                    lRet = false;
                }
            }

            return(lRet);
        }