SQL запрос в форме
Модераторы: m0p3e, edward_K, Модераторы
SQL запрос в форме
Есть форма текст ниже
.linkform ’Raspor’ prototype is ’PRBDOC’
.NameInList ’Myform’
.group 'Продажа'
.var
plkontr:string
.endvar
.create view vsveddk
as select *
from
basedoc(readonly), dogovor(readonly), katorg(readonly)
where
((comp(BaseDocNrec)==Basedoc.nrec and
basedoc.corg==katorg.nrec));
.fields
Plkontr
.endfields
.{
.begin
vsveddk.GetFirst Basedoc;
vsveddk.GetFirst katorg;
Plkontr:= vsveddk.KATORG.name;
end.
KATORG.name ^
.{ CheckEnter IsExClass
.}
.{ CheckEnter IsGroup
.}
.{
.}
.if Delimiter
.end
.}
.endform
При отработке Галактика либо вылетает либо выдает мусор - отчаялся понять почему. Версия 7.12
.linkform ’Raspor’ prototype is ’PRBDOC’
.NameInList ’Myform’
.group 'Продажа'
.var
plkontr:string
.endvar
.create view vsveddk
as select *
from
basedoc(readonly), dogovor(readonly), katorg(readonly)
where
((comp(BaseDocNrec)==Basedoc.nrec and
basedoc.corg==katorg.nrec));
.fields
Plkontr
.endfields
.{
.begin
vsveddk.GetFirst Basedoc;
vsveddk.GetFirst katorg;
Plkontr:= vsveddk.KATORG.name;
end.
KATORG.name ^
.{ CheckEnter IsExClass
.}
.{ CheckEnter IsGroup
.}
.{
.}
.if Delimiter
.end
.}
.endform
При отработке Галактика либо вылетает либо выдает мусор - отчаялся понять почему. Версия 7.12
-
- Местный житель
- Сообщения: 228
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Договора выгружаешь, а связку не делаешь, вот мусор и гонится...
* Я пометил те места, которые изменял
Так поидеи должно заработать...
* Я пометил те места, которые изменял
Код: Выделить всё
.linkform ’Raspor’ prototype is ’PRBDOC’
.NameInList ’Myform’
.group 'Продажа'
.var
plkontr:string
.endvar
.create view vsveddk
as select *
from
basedoc(readonly), dogovor(readonly), katorg(readonly)
where
((
BaseDocNrec == Basedoc.nrec and
basedoc.corg==katorg.nrec
* and basedoc.cdogovor == dogovor.nrec
));
.fields
Plkontr
.endfields
.{
.begin
* vsveddk.GetFirst;
Plkontr:= vsveddk.KATORG.name;
end.
KATORG.name ^
.{ CheckEnter IsExClass
.}
.{ CheckEnter IsGroup
.}
.{
.}
.if Delimiter
.end
.}
.endform
Это была описка с договором не имеющая значения
так тоже не идет
.linkform ’Raspor’ prototype is ’PRBDOC’
.NameInList ’Myform’
.group 'Продажа'
.var
plkontr:string
.endvar
.create view vsveddk
as select *
from
basedoc(readonly), katorg(readonly)
where
((
BaseDocNrec == Basedoc.nrec and
basedoc.corg==katorg.nrec
));
.fields
Plkontr
.endfields
.{
.begin
vsveddk.GetFirst;
Plkontr:= vsveddk.KATORG.name;
end.
KATORG.name ^
.{ CheckEnter IsExClass
.}
.{ CheckEnter IsGroup
.}
.{
.}
.if Delimiter
.end
.}
.endform
Самое интересное в первазив версии отчет выдает все правильно
под ораклом вылетает
eсли меняю поле на katorg.indexk то под ораклом по-прежнему вылетает а первазив дает мусор типа 633____________аYР__оt_I_7____¦Рx__фx______LЪР__оt_
так тоже не идет
.linkform ’Raspor’ prototype is ’PRBDOC’
.NameInList ’Myform’
.group 'Продажа'
.var
plkontr:string
.endvar
.create view vsveddk
as select *
from
basedoc(readonly), katorg(readonly)
where
((
BaseDocNrec == Basedoc.nrec and
basedoc.corg==katorg.nrec
));
.fields
Plkontr
.endfields
.{
.begin
vsveddk.GetFirst;
Plkontr:= vsveddk.KATORG.name;
end.
KATORG.name ^
.{ CheckEnter IsExClass
.}
.{ CheckEnter IsGroup
.}
.{
.}
.if Delimiter
.end
.}
.endform
Самое интересное в первазив версии отчет выдает все правильно
под ораклом вылетает
eсли меняю поле на katorg.indexk то под ораклом по-прежнему вылетает а первазив дает мусор типа 633____________аYР__оt_I_7____¦Рx__фx______LЪР__оt_
-
- Местный житель
- Сообщения: 228
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
Попробуй сделать следующее: Убрать (ReadOnly), изменить тип выводимого поля и избавиться от переменной:
Так же можно попробовать переименовать таблицу, может имя используется...
А зачем нужно выводить данное поле Оно уже есть в прототипе:
pol - платильщик,
grpol - получатель. Или наоборот.
Код: Выделить всё
......
.fields
vsveddk.KATORG.name
.endfields
.{
.begin
vsveddk.GetFirst;
end.
KATORG_name @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
.....
А зачем нужно выводить данное поле Оно уже есть в прототипе:
pol - платильщик,
grpol - получатель. Или наоборот.
То DarkAngel27
То что ты предлагаешь не проходит тоже.
Задача была составить реквизиты контрагента по некоторому шаблону
Потом меня просто заинтересовало почему так получается, например таблица договоров цепляется нормально а каторг нет.
Глюк виден и на тестовой "Галактической базе"
И еще когда прошу выдать katorg.indexk как я уже писал выше и идет мусор 633____________аYР__оt_I_7____¦Рx__фx______LЪР__оt_
так вот 633 - последние три цифры инн контрагента
То что ты предлагаешь не проходит тоже.
Задача была составить реквизиты контрагента по некоторому шаблону
Потом меня просто заинтересовало почему так получается, например таблица договоров цепляется нормально а каторг нет.
Глюк виден и на тестовой "Галактической базе"
И еще когда прошу выдать katorg.indexk как я уже писал выше и идет мусор 633____________аYР__оt_I_7____¦Рx__фx______LЪР__оt_
так вот 633 - последние три цифры инн контрагента
-
- Местный житель
- Сообщения: 228
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва
- Контактная информация:
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Попробуйте заменить это
может станет понятней в чем ошибка
наoiko писал(а): .begin
vsveddk.GetFirst;
Plkontr:= vsveddk.KATORG.name;
end.
Код: Выделить всё
.begin
Plkontr:= '';
if vsveddk.GetFirst BaseDoc = tsOk
{
if vsveddk.GetFirst KatOrg = tsOk
{
Plkontr:= vsveddk.KATORG.name;
}
else Plkontr:= '?!' + vsveddk.BaseDoc.cOrg;
}
end.
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
1. Какая платформа? Oracle , Pervasive + версия
Галактика + патчи.
2. не баловились ли вы с добавлением полей и индексов в katsopr?
очень на то похоже.
3. Четко проверте на каком словаре компилите
я сталкивался с тем , что компили на словаре 585, а запускали на 711 - так вот так будет работать в редких случаях. Лучше компилить всегда на той базе на которой это будет использоваться.
4. попробуйте вывести наименование, unn,indexk и следующее поле за indexk текстовое и заполненое.
5. киньте мне в мыло последний вариант ваше формы, проверю на досуге.
6. попробуйте написать ARd в которой вытащить указанные поля katorg.
Галактика + патчи.
2. не баловились ли вы с добавлением полей и индексов в katsopr?
очень на то похоже.
3. Четко проверте на каком словаре компилите
я сталкивался с тем , что компили на словаре 585, а запускали на 711 - так вот так будет работать в редких случаях. Лучше компилить всегда на той базе на которой это будет использоваться.
4. попробуйте вывести наименование, unn,indexk и следующее поле за indexk текстовое и заполненое.
5. киньте мне в мыло последний вариант ваше формы, проверю на досуге.
6. попробуйте написать ARd в которой вытащить указанные поля katorg.
Большой thanks господину edward_K!
Глюк шел по пункту 3. Текущая версия 712 а в настройке компилятора была указана база 711. А при докомпиляции c 711 на 712 в katsopr действительно добавляется индекс (кстати добавляется криво и мне пришлось лечить таблу после конвертации).
Тема закрыта и пусть послужит остальным уроком.
АРД не использую - лучше напишу на випе интерфейс под отчет - так эргономичнее.
Глюк шел по пункту 3. Текущая версия 712 а в настройке компилятора была указана база 711. А при докомпиляции c 711 на 712 в katsopr действительно добавляется индекс (кстати добавляется криво и мне пришлось лечить таблу после конвертации).
Тема закрыта и пусть послужит остальным уроком.
АРД не использую - лучше напишу на випе интерфейс под отчет - так эргономичнее.