Ejemplo n.º 1
0
        public override void FiscalReport(FiscalReportType reportType, bool full, params object[] reportParams)
        {
            ExecuteDriverCommand(delegate()
            {
                POSCommand Cmd = null;
                _errorCode     = (short)GeneralError.Success;
                switch (reportType)
                {
                case FiscalReportType.ByDates:
                    DateTime firstDate = (DateTime)reportParams[0];
                    DateTime lastDate  = (DateTime)reportParams[1];

                    Cmd = new POSCommand(303);                // фискальный отчет по датам
                    Cmd.AddNumeric(TaxerPassword, 8);         // пароль
                    Cmd.AddNumeric(firstDate.Day, 2);         // день
                    Cmd.AddNumeric(firstDate.Month, 2);       // месяц
                    Cmd.AddNumeric(firstDate.Year, 4);        // год
                    Cmd.AddNumeric(lastDate.Day, 2);          // день
                    Cmd.AddNumeric(lastDate.Month, 2);        // месяц
                    Cmd.AddNumeric(lastDate.Year, 4);         // год
                    Cmd.AddNumeric(Convert.ToInt32(full), 1); // полный или краткий отчет
                    break;

                case FiscalReportType.ByShifts:
                    Cmd = new POSCommand(304);                 // фискальный отчет по сменам
                    Cmd.AddNumeric(TaxerPassword, 8);          // пароль
                    Cmd.AddNumeric((int)(reportParams[0]), 4); // начальная смена
                    Cmd.AddNumeric((int)(reportParams[1]), 4); // конечная смена
                    Cmd.AddNumeric(Convert.ToInt32(full), 1);  // полный или краткий отчет
                    break;
                }

                _errorCode = Cmd.Execute(Port);
            });
        }
Ejemplo n.º 2
0
        public override void FiscalReport(FiscalReportType reportType, bool full, params object[] reportParams)
        {
            switch (reportType)
            {
            case FiscalReportType.ByDates:
                ExecuteDriverCommand("63", true, full ? "1" : "0",
                                     ((DateTime)reportParams[0]).ToString("ddMMyy"),
                                     ((DateTime)reportParams[1]).ToString("ddMMyy"),
                                     TaxerPassword.ToString());
                break;

            case FiscalReportType.ByShifts:
                ExecuteDriverCommand("62", true, full ? "1" : "0",
                                     ((int)reportParams[0]).ToString(),
                                     ((int)reportParams[1]).ToString(),
                                     TaxerPassword.ToString());
                break;
            }
        }
Ejemplo n.º 3
0
        public override void FiscalReport(FiscalReportType reportType, bool full, params object[] reportParams)
        {
            _deviceProtocol.WriteDebugLine(string.Format("FiscalReport({0}, {1})", reportType, full));
            ExecuteDriverCommand(delegate()
            {
                switch (reportType)
                {
                case FiscalReportType.ByDates:
                    _deviceProtocol.CreateCommand(full ? "07" : "05", true);
                    _deviceProtocol.AddString(TaxerPassword.ToString());
                    _deviceProtocol.AddString(((DateTime)reportParams[0]).ToString("ddMMyy"));
                    _deviceProtocol.AddString(((DateTime)reportParams[1]).ToString("ddMMyy"));
                    break;

                case FiscalReportType.ByShifts:
                    _deviceProtocol.CreateCommand(full ? "08" : "06", true);
                    _deviceProtocol.AddString(TaxerPassword.ToString());
                    _deviceProtocol.AddString(((int)reportParams[0]).ToString("d4"));
                    _deviceProtocol.AddString(((int)reportParams[1]).ToString("d4"));
                    break;
                }
                _deviceProtocol.Execute();
            });
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Фискальный отчет
 /// </summary>
 /// <param name="reportType">Тип отчета</param>
 /// <param name="full">Полный или краткий отчет</param>
 /// <param name="reportParams">Параметры отчета (зависят от типа отчета)</param>
 public abstract void FiscalReport(FiscalReportType reportType, bool full, params object[] reportParams);
Ejemplo n.º 5
0
 public override void FiscalReport(FiscalReportType reportType, bool full, params object[] reportParams)
 {
     ErrorCode = new ServerErrorCode(this, GeneralError.Success);
 }