[ОТВЕТИТЬ]
Опции темы
13.02.2012 08:05  
Mtirt
Даже на твоем стриншоте видно.
В Q1 есть supplierdoc (первой строкой).
Его и вставь в печатную форму. Нет?
 
13.02.2012 08:50  
Danil_
Я полностью удалил и сделал заново поле "Накладная"

Код:
function F_SUPPLIERDOCFormatTrigger return boolean is
begin
  
  return (TRUE);
end;
Ошибка та же

Цитата:
REP-1213: Поле 'F_SUPPLIERDOC' ссылается на столбец 'supplierdoc' с частотой ниже его группы.
 
13.02.2012 10:42  
vdm
Если источником для поля F_SUPPLIERDOC служит supplierdoc из запроса спецификации, то это поле обязано лежать в пределах repeating frame, источником для которого служит тот же запрос. У тебя F_SUPPLIERDOC скорее всего где-то в заголовке.

Еще мелкая придирка
Код:
and s.docid = sm.id(+) -- добавил
and s.doctype = sm.doctype(+) -- добавил
Иначе теоретически можно и спецификацию получить.

Но вообще нет смысла для одного документа брать номер/дату с-ф вместе со спецификацией, он все равно в единственном числе у тебя.
Заведи глобальные пользовательские параметры или переменные в спецификации пакета, и заполни их селектом в afterpform. Их можно будет в любом месте использовать.
 
"Спасибо" vdm от:
13.02.2012 11:08  
Danil_
vdm, а можно подробнее? Как-то пошагово что ли. Пробую, пробую, гугла уже замучил бедного, а ошибка всё таже и не могу понять о каком фрейме идет речь.
Давай сначала создадим это поле?
 
13.02.2012 12:03  
vdm
Смотри в объектном навигаторе, кто является родителем для поля F_SUPPLIERDOC.
Если оно выше, чем группа полей запроса спецификации (раз уж ты берешь данные оттуда), то ошибка частоты группы будет.

Использование переменных на примере формы счета-фактуры, см. картинки.

1. В "Программы" добавляется пакет, только спецификация. С соответствующими переменными.
2. В них селектится нужное.
3. Использовать их можно в формулах любого уровня, на частоту группы ругаться не должно.

Вместо переменных пакета можно добавить свое в "Модель данных - Параметры пользователя".
Использовать аналогично.

Если данные используются исключительно однократно, можно не возиться с созданием переменных.
1. Селект из afterpform вынести в отдельный запрос Q3 (аналогично Q2 на твоем скриншоте)
2. На форму кинуть отдельный r.frame с группой Q3
3. В него положить поля с данными из Q3.
Миниатюры
Нажмите на изображение для увеличения
Название: пакет.jpg
Просмотров: 301
Размер:	118.0 Кб
ID:	1131   Нажмите на изображение для увеличения
Название: селект.jpg
Просмотров: 305
Размер:	85.2 Кб
ID:	1132   Нажмите на изображение для увеличения
Название: поле.jpg
Просмотров: 288
Размер:	140.1 Кб
ID:	1133  
 
13.02.2012 22:09  
vdm
Цитата:
Сообщение от vdm
Если данные используются исключительно однократно ...
Сильно перемудрено.
Почти всегда достаточно одного поля с формулой, где текст при необходимости собирается из нескольких частей. Что собственно и можно видеть в скриншоте поля заголовка.
 
15.02.2012 05:48  
Danil_
Вот так SUPPLIERDOC располагается в объектном навигаторе

 
15.02.2012 10:01  
vdm
Речь шла о связи поле F_SUPPLIERDOC - его данные.
Еще раз.
Ошибка
Цитата:
REP-1213: Поле 'F_SUPPLIERDOC' ссылается на столбец 'supplierdoc' с частотой ниже его группы.
Т.е., чтобы поле F_SUPPLIERDOC могло использовать данные из G_SPECITEM, оно должно находиться внутри фрейма, для которого источником данных является группа G_SPECITEM или любая другая, выше чем G_SPECITEM.

Все же выбрось ты supplierdoc из запроса спецификации и сделай уж что нибудь из [глобальная переменная | формула].
 
"Спасибо" vdm от:
16.02.2012 08:00  
Danil_
Я не понимаю вас... Путаюсь в терминах.
Я создал отчет заново. Чистенький запрос только с нужными мне 3 полями.

Код:
SELECT
sm.supplierdoc,
sm.supplierinvoice,
sm.supplinvoicecreate
FROM 
supermag.smwaybillsin sm


Затем добавил поле F_1, которое я хочу, чтобы отображало данные из стобца и указал в палитре свойств источник supplierdoc.

И он выдал ту же самую ошибку.

Это 3 действия. Что из них я делаю не так? Или какое-то пропустил может быть?
Что нужно сделать, чтобы у меня заработал мой отчет? Хотя бы вот этот простенький, который я начал заново, потом уже разберусь и добавлю это поле в нужный.

Не понимаю как создать глобальную переменную.
А выбросить supplierdoc из запроса спецификации значит просто удалить строку в селект из запроса Q_1 в моем отчете?
 
16.02.2012 09:28  
Danil_
Разобрался, практически, по крайней мере повторящийся фрейм сделал и теперь отчет ошибку не выдает, но и поле пустое, буду разбираться что в запросе не так
 
 


Опции темы



Часовой пояс GMT +3, время: 11:04.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.