View previous topic :: View next topic |
Author |
Message |
integral
Joined: 19 Jul 2002 Posts: 378
Occupation: ОАО "Интеграл" инженер-программист Interests: Нефтекамск
|
Posted: 22 Mar 2007 10:40 Post subject: Доступ к полям пользователя в FastReport |
|
|
Стоит задача в табличной части расходной накладной выводить поля пользователя из спр-ка партий.
Подскажите как это сделать в FastReporte. |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 23 Mar 2007 09:50 Post subject: |
|
|
Добрый день!
Это можно мделать с помощью объекта "Запрос к базе данных БЭСТ" или разработв пользовательский источник средствами СУБД Foxpro. В запросе должны быть сделаны параметры: код группы, номенклатурный номер и номер партии. По этим данным запрос вернет необходимые Вам поля. Затем необходимо установить связку Вашего запроса и источника STROKI. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
itman
Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 27 Apr 2007 14:55 Post subject: |
|
|
Это же решение справедливо для БЭСТ-4+? |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 27 Apr 2007 15:22 Post subject: |
|
|
Добрый день!
Такое решение для БЭСТ-4+ возможно. Только в данной программе нет возможности сделать подчиненный истчнику запрос. Поэтому схема решения не много меняется:
1. Сделать указанный запрос
2. В инспекторе свойств запроса войти в свойство "Params" и в значениях параметров настроить ссылку с полями источника STROKI.
3. Перед выводом каждой строки документа необходимо перерасчитывать источник. Для этого в событии OnBeforePrint кнопки выполнить необходимо написать код:
<Свойство_Name_запроса>.Close;
<Свойство_Name_запроса>.Open; _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
itman
Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
|
Posted: 27 Apr 2007 15:51 Post subject: |
|
|
ОК
Для параметра в шапку документа принцип тот же?
и еще вопрос, чтобы велосипед не собирать:
Заполнение в Торг-12 поля грузоотправителя по значению, которое заносится в сч-ф. Кто-то уже реализовывал?
Т.е. в сч-ф по F5 выбирается грузоотправитель.
Затем печатается сч/ф и Торг-12. |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 27 Apr 2007 16:48 Post subject: |
|
|
Добрый день!
itman wrote: | Для параметра в шапку документа принцип тот же? | Да принцип такой-же. Так как в источнике SHAPKA одна строка, то переоткрывать источник не нужно. В данном случае это запрос можно открыть в событии OnClick кнопки Выполнить.
itman wrote: | Заполнение в Торг-12 поля грузоотправителя по значению, которое заносится в сч-ф. | Это можно решить при помощи запроса к Базе Данных БЭСТ:
1. Получить код партнера указанного в с/ф
2. Передать данный код справочнику партнеров и получить все реквизиты грузополучателя.
Возможно это сделать и одним запросо _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
integral
Joined: 19 Jul 2002 Posts: 378
Occupation: ОАО "Интеграл" инженер-программист Interests: Нефтекамск
|
Posted: 04 May 2007 10:32 Post subject: |
|
|
Для решения задачи вывода полей спр-ка партий в табличной части накладной сделал следующее:
1.добавил компонент "источник данных БЭСТ" - назвал Parts
2.связал его со справочником партий. DSName - bdf.FORM_SCLAD.form_sclad_spr_part
3.указал MasterSource - Stroki
4.в диалоге MasterFields - добавил
Код группы-> Группа
Номенклатурный номер-> Номенклатурный номер
Код партии -> Партия
Все заработало - в форме доступ в полям партии через Parts.
НО
Стала просто до безобразия медленно формироваться форма отчета.
1мин 40 сек на формирование накладной из 4-х строк на Core 2 Duo 1Gb DDR.
Что можно сделать?
Разработчикам - индексами когда пользоваться начнете? |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 04 May 2007 10:53 Post subject: |
|
|
Добрый день!
integral wrote: | Стала просто до безобразия медленно формироваться форма отчета. 1мин 40 сек на формирование накладной из 4-х строк на Core 2 Duo 1Gb DDR.Что можно сделать? | Я сказал Вам наиболее простое решение. Но если оно Вас не устраивает, рекомендую отказатся от двух источников и сделать один пользовательский источник.
integral wrote: | Разработчикам - индексами когда пользоваться начнете? | Как использовать индексы для разработки источников описано в руководстве по написанию источнико _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
integral
Joined: 19 Jul 2002 Posts: 378
Occupation: ОАО "Интеграл" инженер-программист Interests: Нефтекамск
|
Posted: 04 May 2007 12:04 Post subject: |
|
|
Quote: | Это можно мделать с помощью объекта "Запрос к базе данных БЭСТ" |
Можно подробнее. Как настроить параметры и SQL зап |
|
Back to top |
|
|
dshlykov
Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
|
Posted: 04 May 2007 15:18 Post subject: |
|
|
Добрый день!
integral wrote: | Можно подробнее. Как настроить параметры и SQL запрос | Такой объект "Запрос к данный БЭСТ" есть на карточке запроса FastReport. В его свойство SQL пишется текст необходимового Вам SQL-запроса. Что бы описать параметры запроса указывается следующая комбинация - :<имя_параметра>. После настройки текста запроса необходимо перейти в свойство PARAMS и указать тип параметров запроса. Например, выбрать из номенклатурного справочника все записи указанной пользователем группы:
SELECT * FROM SCLAD_MLABEL WHERE GRUP=:pgrup Данный объект работает медленее источников данных разработанных на Fox. _________________ С уважением, Дмитрий Шлыков
Компания "БЭСТ" |
|
Back to top |
|
|
|