powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / нид хелп или просто печать в досовском фоксе!!!
17 сообщений из 17, страница 1 из 1
нид хелп или просто печать в досовском фоксе!!!
    #35011069
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема в чем...устроился на работу, а там прога в фоксе досовсвом да и немного недоработана. Я секу в вижуал фокспро но с досовским впервые столкнулся.
На данный момент нужно сделать печать текстового файла на лазерный принтер. Чтоб мозги себе не ломать я сделал прогу на делфе чтоб печатала фай с разными параметрами, но при вызове ее печатует пустой файл так как фокс не записал в файл пока ничего, или как он там работает с ним, хотя код вызова делфи приложения стоит в самом конце фокса-кода перед quit.
Мот текстовый файл закрыть нужно или .... короче хелп иначе будет (_._) :)
И еще мот кто сможет набросать структуру вывода на печать на лазерник бо с матричным есть отличия.
Презнателен за любую помощь!
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011118
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Во-первых, досовый фокс может сам очень даже неплохо печатать на лазерный принтер. Надо только не кидаться задачи в нем решать в стиле С/Паскаль/АСМ, п попытаться, для начала, изучить возможности инструмента в части необходимого функционала. В частности, в нем есть GenPD.APP и возможность настройки системы печати на нужный тип принтера.
Во-вторых, где код? Как мы должны догадаться о способах формирования файла? Телепатически?
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011192
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот код печати и непосредственно конец кода этой программы.
Как мне сказали раньше до лазерников все норм работало а щас ....

*************************Печать*******************************
kuda=1
do nadopech with kuda
if kuda=2 && на принтер
set devi to print
set print to prn
endif
if kuda=1 && на экран
set devi to print
set printer to vedom16
defi wind ved from 0,0 to 24,79 title '' shadow system color 7/0
acti wind ved
endif
@prow()+1,pcol() say chr(27)+"C"+chr(80)
@prow(),pcol()+1 say chr(15)
list=1
str=1
i=1
@prow()+1,20 say 'Ведомость №16 по опту(база) за период с '+dtoc(date1)+' по '+dtoc(date2)+' Страница '+str(list,3)
@prow()+1,1 say '----------------------------------------------------------------------------------------------------------------'
@prow()+1,1 say '! ! ! ! ! ! В том числе !'
@prow()+1,1 say '!№ п/п! Наименование покупателя ! Дата ! № накл ! Сумма накл !---------------------------------------------!'
@prow()+1,1 say '! ! ! ! ! ! Стоимость ! Наценка ! НДС 10% ! НДС 18% !'
@prow()+1,1 say '----------------------------------------------------------------------------------------------------------------'
sele vedom16
scan
naim_=naim1
@prow()+1,2 say i pict '@z 9 999'
@prow(),8 say left(ltrim(rtrim(naim1)),25)
@prow(),34 say dt_otgr
@prow(),46 say ltrim(rtrim(dok))
@prow(),55 say summa_opl pict '@z 999 999 999'
@prow(),68 say summa_tov pict '@z 999 999 999'
@prow(),80 say summa_nac pict '@z 99 999 999'
@prow(),91 say summa_10 pict '@z 99 999 999'
@prow(),102 say summa_18 pict '@z 99 999 999'
s1=s1+summa_opl
s2=s2+summa_tov
s3=s3+summa_nac
s4=s4+summa_10
s5=s5+summa_18
i=i+1
str=str+1
if str=55 and recno()<reccount()
str=1
list=list+1
eject
@prow()+1,20 say 'Ведомость №16 по опту(база) за период с '+dtoc(date1)+' по '+dtoc(date2)+' Страница '+str(list,3)
@prow()+1,1 say '----------------------------------------------------------------------------------------------------------------'
@prow()+1,1 say '! ! ! ! ! ! В том числе !'
@prow()+1,1 say '!№ п/п! Наименование покупателя ! Дата ! № накл ! Сумма накл !---------------------------------------------!'
@prow()+1,1 say '! ! ! ! ! ! Стоимость ! Наценка ! НДС 10% ! НДС 18% !'
@prow()+1,1 say '----------------------------------------------------------------------------------------------------------------'
endif
endscan
@prow()+1,1 say '----------------------------------------------------------------------------------------------------------------'
@prow()+1,8 say 'ИТОГО ПО ВЕДОМОСТИ:'
@prow(),55 say s1 pict '@z 999 999 999'
@prow(),68 say s2 pict '@z 999 999 999'
@prow(),80 say s3 pict '@z 99 999 999'
@prow(),91 say s4 pict '@z 99 999 999'
@prow(),102 say s5 pict '@z 99 999 999'
set printer to prn
set devi to screen
if kuda=1
modi comm vedom16. wind ved noedit
rele wind ved
endif
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
if kuda=2
&& вызываю свою программу для печати файла но он пустой пока не закроешь сам фокс-окно
! dos_print VEDOM
endif
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
quit
enddo
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011224
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
когда я пробовал испльзовать свою печать то выводил сначало в файл всю инфу. Желательно покажите как правильней сделать для печати с фокса самого и с помощью моего способа... так для своего развития ... мот пригодится.

if kuda=2 && на принтер
set devi to print
set print to prn
endif

if kuda=1 && на экран
set devi to print
set printer to vedom16
defi wind ved from 0,0 to 24,79 title '' shadow system color 7/0
acti wind ved
endif

.....................................

if kuda=2
! dosprn VEDOM
endif
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011232
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сорри хотел исправить но забыл ... щас все исправил

if kuda=2 && на принтер
set devi to print
set print to VEDOM
endif

if kuda=1 && на экран
set devi to print
set printer to vedom16
defi wind ved from 0,0 to 24,79 title '' shadow system color 7/0
acti wind ved
endif

.....................................

if kuda=2
! dosprn VEDOM
endif
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011292
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
set printer to vedom.txt
...
...
set print to

if kuda= 2 
! dosprn VEDOM.txt
endif
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011334
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
set printer to vedom.txt
...
...
set print to

if kuda= 2 
! dosprn VEDOM.txt
endif

Таже фигня печатует пустой лит... тк файл или пуст или еще не закрыт фоксом.
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011422
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Файл то хоть сформировался?
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011589
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pornozavr...
if kuda=2 && на принтер
set devi to print
set print to prn
endif
if kuda=1 && на экран
set devi to print
set printer to vedom16
defi wind ved from 0,0 to 24,79 title '' shadow system color 7/0
acti wind ved
endif
...
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
if kuda=2
&& вызываю свою программу для печати файла но он пустой пока не закроешь сам фокс-окно
! dos_print VEDOM
endif
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
quit
enddo
Откуда у тебя файл-то возьмется, если ты в LPT порт все послал?
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011598
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pornozavr Я секу в вижуал фокспро но с досовским впервые столкнулся.
Если правда секешь, то перепиши формирование файла средствами работы с файлами FCREATE(), FPUTS(), FWRITE(), FCLOSE() - эти функции в FPD также работают.
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011613
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TОткуда у тебя файл-то возьмется, если ты в LPT порт все послал?

Сори, поправки не заметил:
pornozavr
set print to VEDOM


Нашел в архивах:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
        set printer on
        set console off
        set printer to header.txt
        ? '  Планируемый остаток  (Норма расхода :',alltrim(str(norm, 10 , 2 )),")"
        ? '┌────────┬───────────────────────────────────┬─────────┬────────┐'
        ? '│  Дата  │ Описание                          │  Сумма  │ Остаток│'
        ? '└────────┴───────────────────────────────────┴─────────┴────────┘'
        set printer to telo.txt
        ost=sys_ost
        ? "",date(),pset("Текуший остаток"+space( 20 ))+str(ost, 10 , 2 )+str(ost, 9 , 2 )
        scan for plan
             ? '',date,pset(spr.name)+str(prih-rash, 10 , 2 )+str(ost-(date-date()+lnCorr)*norm, 9 , 2 )
             ost=ost+prih-rash
        endscan
        go re
           set printer off
           set console on
           set printer to

...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35011623
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут я софтинку для печати из FPD выкладывал
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35012026
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зачем нужны софтинки, если из фокса можно файл на принтер послать командой copy file to prn, например, при этом файл сформирован с командами языка PCL-6, например, и принтер его понимает? Кстати, упомянутое GenPD.APP делает то же самое - добавляет в output команды для принтера.
________
Не дадим распространиться заразе политкорректности!
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35013938
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov.Файл то хоть сформировался?
да, только все равно он пустой до самого закрытия программы.




Функции FCLOSE('VEDOM') фокс не понимает.

еще

if kuda=2 && на принтер
set devi to print
set print to prn &&<--- тут программа зависает
endif



скину полный код проги мот кто подскажет...
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35014131
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вот твоя прога с выкинутой расчетной частью. Не забудь закоментировать строку с переменными для проверки.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
set exclu off
set date briti
set cent on
set talk off
set safety off
store  0  to s1,s2,s3,s4,s5
store date() to date1,date2 &&  две переменных для проверки
*************************Печать*******************************
  kuda= 1 
*  do nadopech with kuda
  set devi to print
  set printer to VEDOM.TXT
  if kuda= 1 
*    set devi to print
*    set printer to vedom16
    defi wind ved from  0 , 0  to  24 , 79  title '' shadow system color  7 / 0 
    acti wind ved
  endif
@prow()+ 1 ,pcol() say chr( 27 )+"C"+chr( 80 )
@prow(),pcol()+ 1  say chr( 15 )
list= 1 
str= 1 
i= 1 
@prow()+ 1 , 20  say 'Ведомость ь16 по опту(база)  за период с '+dtoc(date1)+' по '+dtoc(date2)+'     Страница '+str(list, 3 )
@prow()+ 1 , 1  say '----------------------------------------------------------------------------------------------------------------'
@prow()+ 1 , 1  say '!     !                         !          !        !            !                В том числе                  !'
@prow()+ 1 , 1  say '!ь п/п! Наименование покупателя !   Дата   ! ь накл ! Сумма накл !---------------------------------------------!'
@prow()+ 1 , 1  say '!     !                         !          !        !            ! Стоимость  ! Наценка  ! НДС 10%  ! НДС 18%  !'
@prow()+ 1 , 1  say '----------------------------------------------------------------------------------------------------------------'
    @prow()+ 1 , 20  say 'Ведомость ь16 по опту(база)  за период с '+dtoc(date1)+' по '+dtoc(date2)+'     Страница '+str(list, 3 )
    @prow()+ 1 , 1  say '----------------------------------------------------------------------------------------------------------------'
    @prow()+ 1 , 1  say '!     !                         !          !        !            !                В том числе                  !'
    @prow()+ 1 , 1  say '!ь п/п! Наименование покупателя !   Дата   ! ь накл ! Сумма накл !---------------------------------------------!'
    @prow()+ 1 , 1  say '!     !                         !          !        !            ! Стоимость  ! Наценка  ! НДС 10%  ! НДС 18%  !'
    @prow()+ 1 , 1  say '----------------------------------------------------------------------------------------------------------------'
@prow()+ 1 , 1  say '----------------------------------------------------------------------------------------------------------------'
@prow()+ 1 , 8  say 'ИТОГО ПО ВЕДОМОСТИ:'
set printer to && prn
set devi to screen

if kuda= 1 
 modi comm vedom.txt wind ved noedit
 rele wind ved
endif
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
  if kuda= 2 

*  copy file VEDOM to prn &&<-- зависание 
! dosprn VEDOM

  endif
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35014691
pornozavr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде для данного случая все пошло :)
Всем биг сенк за помощь!

PS: у меня таких проблем будет аж на 500 мб :) так что еще загляну.)
...
Рейтинг: 0 / 0
нид хелп или просто печать в досовском фоксе!!!
    #35015976
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтоб печать произошла, нужно обязательно сделать
set printer to
(без указания, куда) после завершения печати.
________
Не дадим распространиться заразе политкорректности!
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / нид хелп или просто печать в досовском фоксе!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]