Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Базы данных и репортинг > Проблемы со штрих-кодом


Автор: mirbor 22.4.2011, 11:37
Здравствуйте уважаемые

я новичок и столкнулся с такой проблемой. Нужно распечатать почтовые конверты.
Каждый район имеет свой штрих-код. Конверты печатаются большим количеством и количество копии контролируется через
штрих код. Т. е. мне нужно чтобы в каждой копии конверта ставился уникальный штрих-код увеличенный на одну единицу.
Например :
PA50000001811
PA50000002111
PA- идентификатор
50- код района
с 000001-000002-номера конвертов
девятая цифра - контрольная цифра
и 11 - год
т. е. нужно чтобы при печати если указано число копии 8 то 

PA50000001811
PA50000002111
PA50000003511
PA50000004911
PA50000005211
PA50000006611
PA50000007011
PA50000008311
Пожалуйста помогите

Автор: MetalFan 22.4.2011, 12:57
И чем помочь? не вижу конкретных вопросов.

Автор: Данкинг 22.4.2011, 13:17
MetalFan, наверное, надо выдрать из строки 0000001 и увеличить на 1. В общем, строку парсить надо. 

Автор: mirbor 22.4.2011, 14:13
MetalFan. И чем помочь? не вижу конкретных вопросов.

Я не знаю как например следующей копии странице присвоить другой штрих код. При печати же указывают количество копии и все.

Автор: MetalFan 22.4.2011, 14:22
Что-то по-моему и эту тему в центр помощи надо отправить.
Автор сам не знает, что ему надо.
Я НЕ ВИЖУ вопроса вида: делал так-то, не получилось, подскажите, где не правильно?

Код

for i := 1 to CopyCount do
begin
  Code := ID + DistrictCode + Format('%.7d', [i]);
  Code := Code +  CalcCheckSum(Code)+ Year;
...

Автор: mirbor 22.4.2011, 15:16
MetalFan спасибо. 
Извините если не ясно выразился. 
Попробую еще раз. Допустим если оператор указал, что нужно 5 конвертов распечатать, то он указывает количество копий 5 штук.
Мне нужно, чтобы каждой следующей копии штрих код увеличивался
например:
PA50000001811
PA50000002111
PA50000003511
PA50000004911
PA50000005211

как показано жирным. Т.е. нужно вести учет распечатанных конвертов.

Автор: MetalFan 22.4.2011, 15:34
mirbor, "нужно" - и что? сами что-то писать пробовали? Какой учет нужно вести? где?
Я привел прототип кода по формированию кода.

Автор: mirbor 23.4.2011, 02:55
Задача такова как говорил каждой копии конверта дается уникальный штрих код, увеличенный с предыдущего на 
единицу и потом последнее значения я сохраняю в базе. Если поступят новые заказы из этого региона, то счетчик конечно
будет начинаться с этого сохраненного значения. Все я сделал единственное не могу присвоить штрих код каждой отдельной 
копии конверта

Автор: mirbor 23.4.2011, 03:34
Спасибо. Вопрос исчерпан. Удалось сделать при  правильной обработке события frxReport2PrintPage(Page: TfrxReportPage;
  CopyNo: Integer)

Всем удачи !!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)