powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / помогите написать правильный код на кнопку "Печать"
25 сообщений из 26, страница 1 из 2
помогите написать правильный код на кнопку "Печать"
    #38080555
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Собственно,задача в том,чтобы написать код к кнопке "печать" на форме.форма предназначена для поиска минимального элемента в заданом диапозоне времени(начальная дата и конечная дата).само задание к форме такое:"выбрать автообиль с наименьшим расходом горючего за данный период" задача про автотранспортное предприятие.
ЛОГИКА ТАКАЯ,РАБОТНИК(ВОДИТЕЛЬ) БЕРЁТ АВТОМОБИЛЬ В ПРЕДПРИЯТИИ И ПУТЕВОЙ ЛИСТОК,ПО НЕМУ ДОСТАВЛЯЕТ ГРУЗ НА МЕСТО.
на моей ФОРМЕ,ЕСТЬ КНОПКИ:1)ПОИСК 2)ПРОСМОТР 3)ПЕЧАТЬ 4)ВЫХОД
ВСЁ РАБОТАЕТ.НО ПРОБЛЕМА В ТОМ ЧТО Я НЕ ЗНАЮ КАК НАПИСАТЬ КОД В КНОПКЕ ПЕЧАТЬ(ПРИ НАЖАТИИ НА КНОПКУ,У МЕНЯ ВЫВОДИТСЯ ОТЧЁТ )КАК ПРАВИЛЬНО НАПИСАТЬ ДЛЯ МОИХ УСЛОВИЙ? ПОИСК ПО ЗАДАНЫМ ДАТАМ ВЫЕЗДОВ И АВТОМОБИЛЮ НАЙДЕНОМУ В ЭТОМ ДИАПОЗОНЕ
сам код печати вот он" REPORT FORM "poisk_avto1.frx" PREVIEW FOR (rabota2.viezd>=(nach) AND (rabota2.viezd<=(kon)) TO MIN(min_rashodgor)"
таблица работа2-это промежуточная таблица.там инфо о маршруте и путевом листе.
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38080560
ОТОЖМИ КАПС
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38080699
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ниасилил. МНОГОБОЛЬШИХБУКАВ
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38080717
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ребят,помощи жду от вас!!
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38080731
thunder2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgin,
Не ори, истеричко ! )))

От нас, что требуется ? Ты не знаешь как распечатать отчет или ты не понимаешь как выполнить выборку данных из таблиц ?
Если первое, то читай help ( в командном окне набери help report и нажми Enter), если второе, то тогда не понятно. что же у тебя тогде авторВСЁ РАБОТАЕТ. ? Ну и потом не видя структуры таблиц и не обладая даром телепатии никто и ничего тебе тут не скажет. Буду глумиться над тобой несчастным.
Если пост оформишь, через ..опу (без открытия для себя кнопок SRC, CSV) отвечать не будем.
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081014
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
thunder2,а я не ору))
при нажатии на печать он мне выдаёт отчёт,в котором не выводит верно информацию,записывает в отчёте все автомобили что у меня есть,но не тот который находится в поиске.Вот я и думаю,может я в коде кнопки ощибся,что у меня фокс не читает условие по которому должен в отчёт записывать правильно
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081016
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evginthunder2,а я не ору))
при нажатии на печать он мне выдаёт отчёт,в котором не выводит верно информацию,записывает в отчёте все автомобили что у меня есть,но не тот который находится в поиске.Вот я и думаю,может я в коде кнопки ощибся,что у меня фокс не читает условие по которому должен в отчёт записывать правильно.
вот мой поиск:

nach=CTOD(ALLTRIM(_screen.ActiveForm.time_nach.value))
kon=CTOD(ALLTRIM(_screen.ActiveForm.time_kon.value))
SELECT 1
USE rabota2
SELECT 2
USE avtomobil
SELECT 1
replace ALL rashodgor WITH avtomobil.rashodtop*(rabota2.rasstoyani/100)

CALCULATE MIN(rabota2.rashodgor) for (rabota2.viezd>=(nach)) AND (rabota2.viezd<=(kon)) TO min_rashodgor
COUNT FOR rabota2.rashodgor=min_rashodgor TO kolr
IF kolr>0 THEN
_screen.ActiveForm.prosm.visible=.t.
_screen.ActiveForm.printer.visible=.t.
ELSE
MESSAGEBOX('ошибка!в данныый период рейсов не производилось')
endif

а теперь,как мне правильно код для кнопки печать написать,чтобы мне открывался мой отчёт и там выводилась правильно информация по поиску?
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081024
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вот моя структура
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081025
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgin
Код: sql
1.
REPORT FORM "poisk_avto1.frx" PREVIEW FOR (rabota2.viezd>=(nach) AND (rabota2.viezd<=(kon)) TO MIN(min_rashodgor)

что ЭТО у вас означает?
Вообще, вы же печатаете то, что нашли - так зачем нам ваш код печати? Разбираться надо с поиском...
Замечу также, что если "Просмотр" работает правильно, а "Печать" - нет, то вообще непонятны ваши хотелки...
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081031
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,суть такая,нажимаю на печать и на экран открывается отчёт о найденом автомобиле,без вывода на печать. а фрагмент кода,"to min(...)" это поиск моего минимального элемента за указаный период.ХОЧУ,)) чтобы он мне выводил один найденый автомобиль,а он мне выводит все мои автомобили которые я вбивал в БД
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081036
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Oops :)

А poisk_avto1.frx к какой таблице у вас привязана?

(Кстати, RELATION у вас должен быть сделан наоборот - от RABOTA2 к AVTOMOBIL)
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081039
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дали бы уж свой проектик целиком, что-ли... поскольку строить собственный тестовый пример ну никак не входит в мои планы, а проверять-то на чём-то надо.
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081052
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я бы и рад,да вот только каким образом то,у меня жестолько файлов там..целую папку с проэктом как загрузить сюда?
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081056
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,

а poisk_avto1.frx ,привязан к РАБОТА2.связь менял уже,мне препод сказал как надо ставить связи,по другому не работало
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081068
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ФОКСПРО-загадка.поменял код у кнопки печать,оставил условие только "for min_rashodgor" -поругалось на ошибку,вроде циклическую,потом переисправил обратно и форма вообще перестала запускаться.ругается на циклическую ошибку .может завтра запущу и перестанет ругаться
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081081
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgin,

Понятно, очередной "не читатель, а писатель".
Report formпредложения FOR , и WHILE отбирают записи. Эти критерии отбора не действуют, если Вы выбираете печать из окна предварительного просмотра
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081139
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jonny540,

а как тогда написать?
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081153
Jonny540
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgin,

Как-как? В "поиске" сделать выборку по твоим условиям в таблицу/курсор и уже ее просматривать/печатать.
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081164
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jonny540,я так всё и делаю.
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081233
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgin , да где-же вы "так делате"-то?
Код: sql
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.
ldNach=CTOD(ALLTRIM(_screen.ActiveForm.time_nach.value))
ldKon=CTOD(ALLTRIM(_screen.ActiveForm.time_kon.value))

UPDATE rabota2;
 SET rabota2.rashodgor=avtomobil.rashodtop*rabota2.rasstoyani/100;
 FROM avtomobil;
 WHERE rabota2.kod_avto=avtomobil.kod_avto 

SELECT MIN(rashodgor);
 FROM rabota2 t1;
 WHERE t1.viezd>=ldNach AND t1.priezd<=ldKon;
 INTO ARRAY aMinRashod

SELECT t1.*;
FROM rabota2 t1 INNER JOIN avtomobil t2 ON t1.kod_avto=t2.kod_avto;
WHERE t1.viezd>=ldNach AND t1.priezd<=ldKon;
 AND t1.rashodgor = aMinRashod(1,1);
INTO CURSOR curRabota2

IF _TALLY>0 THEN 
 _screen.ActiveForm.prosm.visible=.t.
 _screen.ActiveForm.printer.visible=.t.
ELSE
 MESSAGEBOX('ошибка! в данныый период рейсов не производилось')
ENDIF

И выводите на просмотр/печать содержимое курсора curRabota2
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081318
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,как я понял,это sql,я с ним мало знаком пока что,без него как то по другому нельзя случайно??спасибо за вашу помощь
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081361
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
nach=CTOD(ALLTRIM(_screen.ActiveForm.time_nach.value))
kon=CTOD(ALLTRIM(_screen.ActiveForm.time_kon.value))

USE avtomobil IN 0
USE rabota2 IN 0
REPLACE ALL rashodgor WITH avtomobil.rashodtop*rabota2.rasstoyani/100

CALCULATE MIN(rabota2.rashodgor) FOR (rabota2.viezd>=m.nach) AND (rabota2.priezd<=m.kon) TO min_rashodgor
COUNT FOR rabota2.rashodgor=m.min_rashodgor TO kolr
IF m.kolr>0 THEN 
 _screen.ActiveForm.prosm.visible=.t.
 _screen.ActiveForm.printer.visible=.t.
 SET FILTER TO (rabota2.viezd>=m.nach) AND (rabota2.priezd<=m.kon) AND (rabota2.rashodgor=m.min_rashodgor)
 GO TOP
ELSE
 MESSAGEBOX('ошибка! в данныый период рейсов не производилось')
ENDIF
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081592
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,
почти один в один коды что я изначально писал))..у меня расход горючего только в проге расчитывается другой,поэтому даж ненадо,сейчас попоробую с вашим кодом запустить...нет,не работает.и что самое удивительное,раньше форма запускалась через меню,и была проблема с отчётом по кнопке печать,теперь вообще через меню она не вызывается
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38081612
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Звиняйте, но то, что не запускается у вас - это ваши проблемы, что вы там успели вкосячить

Кстати, на будущее: забудьте про употребление словосочетания "код почти один в один" на проффорумах - этим вы не только показываете, что даже не разбирались с кодом, но и сразу сообщаете свой левел в данной прикладной области...
...
Рейтинг: 0 / 0
помогите написать правильный код на кнопку "Печать"
    #38082715
Evgin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AndreTM,хах,я всё конечно понимаю,но и программисты когда то только учатся на профессию.Спасибо огромное за ваши советы по решению моей проблемы
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / помогите написать правильный код на кнопку "Печать"
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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