Автор | Сообщение |
|
| |
Пост N: 82
Зарегистрирован: 08.04.06
|
|
Отправлено: 09.07.07 06:36. Заголовок: Печать платёжки
Хей, россияне! Кто-нить может поделиться модулем печати платёжного поручения? М.б. небезвозмездно... Только клиппером, не а-ля Windows типа на PageScriptе там. Мой E-mail: kniga@online.ru P.S. Понятно, что прям сразу в свою прогу не вставишь, но мне проще что-то переделать, чем писать с нуля...
|
|
|
Ответов - 18
[только новые]
|
|
|
| |
Пост N: 737
Зарегистрирован: 17.05.05
|
|
Отправлено: 09.07.07 08:22. Заголовок: Re:
ее делать пару часов от силы ;) дольше ждать будешь....
|
|
|
|
| Администратор
|
Пост N: 530
Зарегистрирован: 23.05.05
|
|
Отправлено: 09.07.07 12:53. Заголовок: Re:
У меня есть 1) Старый вариант для матричных принтеров, esc-командами выдерживаются все расстояния в мм 2) Печать посредством вставки в шаблон Word посредством ole. Вместо ole в принципе можно сделать динамическое формирование vbs-скрипта по методу, который здесь когда-то обсуждался Как надо ?
|
|
|
|
| |
Пост N: 104
Зарегистрирован: 28.06.05
|
|
Отправлено: 09.07.07 14:33. Заголовок: Re:
Лукашевский пишет: : Цитата, слегка офтопик, но вроде в тему "...блатное о6ращеньице «россияне», всегда казавшееся Татарскому чем-то вроде термина «арестанты», которым воры в законе открывают свои письменные послания на зону, так называемые «малявы»." Виктор Пелевин, Generation П.
|
|
|
|
| |
Пост N: 3
Зарегистрирован: 05.06.07
|
|
Отправлено: 10.07.07 00:26. Заголовок: Мой старый вариант
http://dump.ru/files/f/f89463303/ вывод на печать - через модуль вывода в форму А форма - в отд.файле. "Правь - не хочу". Впрочем, ввод - тоже через аналогичный модуль ввода, который я сделал, когда мне надоело с гетами в PRG-модулях возиться.
|
|
|
|
| |
Пост N: 1
Зарегистрирован: 10.07.07
|
|
Отправлено: 10.07.07 08:40. Заголовок: Re:
Pasha, а можно поподробнее про вариант 2?
|
|
|
|
| Администратор
|
Пост N: 531
Зарегистрирован: 23.05.05
|
|
Отправлено: 10.07.07 13:03. Заголовок: Re:
1. С помощью к примеру Консультант-плюс берется типовая форма 0401060 в формате Word 2. В нужные песта подставляются закладки 3. Посредством fcreate/fwrite создается vbs-файл примерно такого содержания: set obj = WScript.CreateObject("Word.Application") obj.Documents.Open FileName:="BNK_1060.DOC", ConfirmConversions:=False, _ ReadOnly:=True, AddToRecentFiles:=False, PasswordDocument:="", _ PasswordTemplate:="", Revert:=False, WritePasswordDocument:="", _ WritePasswordTemplate:="", Format:=wdOpenFormatAuto, XMLTransform:="" obj.Selection.GoTo What:=wdGoToBookmark, Name:="Numer" Selection.TypeText Text:="12" в конце или obj.Visible = true или obj.ActiveDocument.PrintOut false и так далее. Строки вставляются естественно в cp1251 4. Скрипт вызывается на выполнение __Run('start /m wscript.exe <name>.vbs')
|
|
|
|
| |
Пост N: 2
Зарегистрирован: 10.07.07
|
|
Отправлено: 10.07.07 13:54. Заголовок: Re:
Спасибо, Pasha! Попробую.
|
|
|
|
| |
Пост N: 83
Зарегистрирован: 08.04.06
|
|
Отправлено: 13.07.07 00:42. Заголовок: Re:
Pasha пишет: цитата: | 1) Старый вариант для матричных принтеров, esc-командами выдерживаются все расстояния в мм |
| А я бы этот вариантик попробовал с удовольствием...
|
|
|
|
| |
Пост N: 84
Зарегистрирован: 08.04.06
|
|
Отправлено: 13.07.07 00:57. Заголовок: Re:
SADSTAR2 пишет: цитата: | http://dump.ru/files/f/f89463303/ вывод на печать - через модуль вывода в форму. |
| Скачивается 173403 байт из заявленных 290 Kb и закачка обрубается. Попытки три или четыре делал...
|
|
|
|
| |
Пост N: 85
Зарегистрирован: 08.04.06
|
|
Отправлено: 13.07.07 00:59. Заголовок: Re:
Dima пишет: цитата: | ее делать пару часов от силы ;) |
| См. Pasha: вопрос в выдержке всех расстояний в мм! И это уже отнюдь не пара часов!
|
|
|
|
| |
Пост N: 5
Зарегистрирован: 05.06.07
|
|
Отправлено: 13.07.07 01:15. Заголовок: Re:
Лукашевский пишет: цитата: | Скачивается 173403 байт из заявленных 290 Kb и закачка обрубается. Попытки три или четыре делал... |
| Попытка проверить не удалась. В связи с переходом на новый сервер закачка файлов временно недоступна.
|
|
|
|
|
| |
Пост N: 746
Зарегистрирован: 17.05.05
|
|
Отправлено: 13.07.07 07:04. Заголовок: Re:
|
|
|
|
| Администратор
|
Пост N: 535
Зарегистрирован: 23.05.05
|
|
Отправлено: 14.07.07 10:31. Заголовок: Re:
Лукашевский пишет: цитата: | цитата: 1) Старый вариант для матричных принтеров, esc-командами выдерживаются все расстояния в мм А я бы этот вариантик попробовал с удовольствием... |
| Все время забываю твой емайл :) забей себе в профиль Дай адрес, отправлю
|
|
|
|
| |
Пост N: 87
Зарегистрирован: 08.04.06
|
|
Отправлено: 14.07.07 16:07. Заголовок: Re:
Pasha пишет: цитата: | Все время забываю твой емайл :) забей себе в профиль |
| А его никто не видит! Ведь даже прямо в вопросе указал! Может, он и в профиле есть, только спрятался... :-)
|
|
|
|
| Администратор
|
Пост N: 538
Зарегистрирован: 23.05.05
|
|
Отправлено: 16.07.07 09:29. Заголовок: Re:
Действительно, слепой Отправил Это не клиппер-код, а скрипт. Выполняемые операторы - с префиксом !, остальные строки вставляются в платежку с макроподстановками
|
|
|
|
| |
Пост N: 89
Зарегистрирован: 08.04.06
|
|
Отправлено: 23.07.07 00:08. Заголовок: Re: SADSTAR2
Что данные у тебя высвечиваются для редактирования перед печатью - это интересно (у Pasha форма по всей видимости жёсткая - сразу из DBF и на печать, к тому же я мало сталкивался со скриптами и горячего желания изучать их нет :-), хотя большое спасибо ему за участие - два варианта всегда лучше чем один). Однако возникло несколько вопросов: 1) что среди всех файлов делает README.COM, который толком не запускается (говорит "File not found"); 2) для чего в списке линковки в PP.LNK модуль PRINT.PRG, одноимённая процедура которого ниоткуда не вызывается; 3) зачем в PP_LIB.PRG процедура SHADOWBOX, которая тоже ниоткуда не вызывается; 4) также наоборот, в PP.LNK есть модули MAIN и BEGOST, которых среди всех файлов нет; 5) что среди прочих файлов делают файлы .UDF и для чего они? Внутри они PRG... но большинство из них также ниоткуда не вызываются, кроме как из PP.LNK некоторые. Кстати, LNK их найдёт с таким расширением?
|
|
|
|
| |
Пост N: 7
Зарегистрирован: 05.06.07
|
|
Отправлено: 24.07.07 01:42. Заголовок: Щас буду вспоминать.
5. UDF. Наверное были утеряны исходники. И эти файлы - результат декомпиляции готового экзешника. Поэтому и имена переменных - абстрактные. Обычно у меня - смысловые. Если изменить расширение на prg, то можно применять для повторной сборки. PP.lnk - наверное тоже результат декомпиляции. Здесь достаточно было запустить на компиляцию головной файл pp.prg В нем все указания по входящим модулям есть. 1. README.COM и есть показывалка текста. Вызывается с параметром - именем файла для показывания. из модуля print.prg a='readme '+f_name run &a 2. PRINT.PRG вызывается по F9. Вызов описан в файле формы ввода form1.scf. K_F9:-8:f9proc() Причем в вин.эксплорере файл упорно показан без расширения. А в ФАРе - нормально. А f9proc() находится в PP_LIB.prg 3. SHADOWBOX Возможно - рудимент. По смыслу - был заменен на оконные функции из библиотеки ClipperTools3. Программа делалась на основе более масштабных разработок путем удаления ненужных модулей. 4. MAIN и BEGOST . См.выше. По смыслу BegOst - начальные остатки. Из какой-то др.программы. Дополнение. (Из смутных воспоминаний. Т.к. судя по датам файлов, дело было не ранее 2002 года) В программе задействованы несколько моих стандартных в то время модулей. 1. Модуль инициализации/конфигурирования CFG(). Читает конфиг. файл типа PP.CFG и выполняет то что там написано - присвоение глобальных параметров. В т.ч. настройка принтерозависимых переменных Это - раннее решение. В дальнейшем был задуман переход на диалоговое конфигурирование принтера. Начальный вариант которого виден в режиме Печать/Print_ini. 2. Модуль экранного ввода в экранную форму. Пример описания формы - FORM1.SCF. Вызов - INSHEET("form1.scf"). В оригинале - InSheet("form1.scf") Смысл этого модуля - облегчить разработку и поддержку форм ввода с десятками полей ввода. Поэтому здесь - достаточно вырожденный пример. У меня был вариант этого модуля с формой ввода с вертикальным размером в несколько раз больше физического окна - т.е. с прокруткой. Поэтому одна из фишек - настройка перемещения по полям. Т.е. не линейная последовательность гетов, а перемещение влево/вправо/вниз/вверх из текущего поля. Т.к. собственно ввод делается через GET, то можно задать параметры WHEN VALID PIC. И т.п. В примере есть все секции. Некоторые - заглушены. 3. Модуль формирования печатной формы. Вызов - FORMFILL("ppform.txf") Тут все гораздо проще. На основании файла описания формы и текущих переменных (в т.ч. и значений полей DBF) формируется текстовый файл со вставленными принтерными esc-командами. Далее он обычно отправляется на принтер. 4. Модуль управления экранными окнами. Все функции в WinContr.prg Создан после того, как мне надоело мучиться с выбором положения, размера, раскраски множества всплывающих диалоговых окон. Теперь это можно делать в процессы работы с программой. Перед вызовом окна нажать спец.клавишу - включается режим диалоговой настройки вызванного окна. Параметры окон хранятся в windows.dbf. И минимум забот в процессе написания кода программы. Ну вот. Где-то так. В случае интереса к этому старью - думаю что смогу найти чистые исходники каждого модуля. P.S. Вспомнил!!! У меня летом 2001г квартиру обворовали. В т.ч. и комп унесли. Поэтому пытался восстановить исходники декомпиляцией готовых программ пользователей.
|
|
|
|
| |
Пост N: 91
Зарегистрирован: 08.04.06
|
|
Отправлено: 25.07.07 01:13. Заголовок: Re: SADSTAR2
SADSTAR2 пишет: цитата: | 2. PRINT.PRG вызывается по F9. Вызов описан в файле формы ввода form1.scf. K_F9:-8:f9proc() Причем в вин.эксплорере файл упорно показан без расширения. А в ФАРе - нормально. А f9proc() находится в PP_LIB.prg |
| Спасибо за разъяснения. Интерес к этому старью частичный - решить, что вставлять в свою прогу, а что нет. Так, система окон у меня своя, их цвета/размеры не настраиваются и на фиг нужно - пусть работают, а не красоту наводят... Имя базы клиентов и имена полей естест. тоже другие, хранить платёжки ("назначение платежа" и т.п.) я на первом этапе не буду, а реквизиты клиентов у меня вводятся/редактируются в другом месте... Так что как минимум половину модулей и функций я пока просто исключу, и надо было определиться, какие именно. Вроде определился.
|
|
|
|