Страница 2 из 3

Re: Галактика 5,84. Присоединенная форма

Добавлено: 14 фев 2013, 16:18
Алексей
что то я не совсем понял вопроса... нужно, выводите. до вывода полей делаете .begin end. присваиваете туда значение.
мне иногда бывало необходимо изменить порядок данных идущий с прототипа, я объявлял таблицу в памяти, заполнял её данными из потока и уже потом заполнял форму данные из моей таблицы с нужным мне индексом.

Re: Галактика 5,84. Присоединенная форма

Добавлено: 14 фев 2013, 17:21
agrail

Код: Выделить всё

.linkform 'TexG_Rep_2_excelllllll' prototype is 'TexG_Rep'
.NameInList 'Карточка учета расхода топлива EXCEL(3)!!!'
.Group 'Карточка  учета  расхода  топлива'
.Var
 p,g,t,te,k,p1,g1,t1,te1,k1:double
.EndVar
.create view my from putgsm;
.fields
p
g
t
te
k
.endfields
.begin  {...}
end.
.{ CheckEnter Shapka {...}
.}
.{ CheckEnter DocAnalGSM
.begin
_loop putgsm where ((NrecPL==putgsm.cputlst(noIndex)))
{p:=my.putgsm.probegall
g:=my.putgsm.gruztn
t:=my.putgsm.timeheat
te:=my.putgsm.timeengine
k:=my.putgsm.kofn.}
end.
 ^^^^^
.}
.endform
т.е. в коде где цикл в итоге будет выведено 3 записи к примеру одних и тех же значений, т.е. последняя итерация со знач будет выведена 3 раза...а мне нужно чтобы вывела 3 раза с разными значениями. :mad: принцип след: те поля которые указаны в прототипе и которые я указываю в своей присоединенке выводит значения на ура. как только я указ что присоед табличку , указ перем. присваиваю в цикле этим перем поля из этой таблицы - в моем случае если в таблице заполнен один бак в гсм - выводит нормально, но елси несколько баков - выводит к примеру 3 раза с одними и теми же значениями а именно те что были в послед итерации цикла! может этот цикл в др место вставить или что? как? не понимаю.... :(

Re: Галактика 5,84. Присоединенная форма

Добавлено: 14 фев 2013, 17:28
Den
дак может поможет .{?internal внутри .{ CheckEnter DocAnalGSM

Re: Галактика 5,84. Присоединенная форма

Добавлено: 14 фев 2013, 17:39
Den
а..Вот Вы о чем..ну да что то вроде .{table (цикл по логической таблице внутри DocAnalGSM) тогда поможет..

Re: Галактика 5,84. Присоединенная форма

Добавлено: 14 фев 2013, 17:43
Алексей
тогда поможет следующая конструкция

Код: Выделить всё

.{Table 

.}

Re: Галактика 5,84. Присоединенная форма

Добавлено: 15 фев 2013, 11:34
agrail
попробовал через .{table .} та же история...делаю так:

Код: Выделить всё

.linkform 'TexG_Rep_2_excelllllll' prototype is 'TexG_Rep'
.NameInList 'Карточка учета расхода топлива EXCEL(3)!!!'
.Group 'Карточка  учета  расхода  топлива'
.Var
-----
.endvar
.create view my from putgsm where ((NrecPL==putgsm.cputlst));
.fields
p,g,t,te,k
.endfields
---------
.{ CheckEnter DocAnalGSM
.{table 'my.putgsm'
.begin
if getfirst my putgsm where ((NrecPL==putgsm.cputlst(noIndex)))=tsok do
{p:=my.putgsm.probegall
g:=my.putgsm.gruztn
t:=my.putgsm.timeheat
te:=my.putgsm.timeengine
k:=my.putgsm.kofn
}while getnext my putgsm where ((NrecPL==putgsm.cputlst(noIndex)))=tsok
end.
.}   //конец .{table
.Begin
----- //checkenter DocAnalGSM
end.
.}
^^^^^
-- та же история((( что я делаю не так?

Re: Галактика 5,84. Присоединенная форма

Добавлено: 15 фев 2013, 12:05
Den
.fields
...
my.putgsm.probegall
my.putgsm.gruztn
my.putgsm.timeheat
...
.endfields

.{ CheckEnter DocAnalGSM
....
.{table my
^ ^ ^ // здесь будут поля выведены стока скока рекордом в логический таблице my
.}
.}

Re: Галактика 5,84. Присоединенная форма

Добавлено: 15 фев 2013, 15:08
agrail
действительно все получилось данные вывелись...только вот какая незадача...3 раза вывелось одно и тоже (если в путевом листе 3 бака), например: пробег общий: 12км, 13 км, 14 км..и снова 12км, 13 км, 14 км, и еще раз 12км, 13 км, 14 км. - 3 раза. как убрать дупликаты? возможно в списке полей указываю вместе с полями прототипа свои поля с подключенной таблицей?

Re: Галактика 5,84. Присоединенная форма

Добавлено: 15 фев 2013, 15:38
Den
Я честно гря не понимаю толком что Вы там пытаетесь сделать исходя из предметной области. Но одно ясно точно - в цикле DocAnalGSM значит приходят нреки путевых листов (NrecPl прототипа) , в которых есть совпадение по putgsm.cputlst по 3-м записям. Вот и выводит на каждый NrecPl в цикле 3 записи putgsm. Как написана вью и логика отчета - так и выводит вообщем то....

Re: Галактика 5,84. Присоединенная форма

Добавлено: 19 фев 2013, 09:56
agrail
да все верно. я просто забыл привязать присоединенную табличку с данными прототипа, добавил условие: .create view my putgsm where ((NrecPL==putgsm.cputlst(noindex) and ostout==putgsm.ow(noindex))) и все встало на свои места. Спасибо!

Re: Галактика 5,84. Присоединенная форма

Добавлено: 19 фев 2013, 12:01
agrail
имеется стандартный шаблон из папки галактики: RGSM_Rep.xlt. Почитал литературу, про то что в этом шаблоне 3 листа (отчет, лист с таблицей и лист с переменными). А что если необходимо добавить поля с другой таблички как в примере свыше? как присоединить таблицу putgsm аналогично примеру выше? ведь здесь не объявить типа .create view .... .{table.... и т.д....

Re: Галактика 5,84. Присоединенная форма

Добавлено: 19 фев 2013, 12:12
RAJAH
agrail писал(а):имеется стандартный шаблон из папки галактики: RGSM_Rep.xlt.
Это - вообще другая тема, не относящаяся к присоединённым формам. Ищите на форуме. Вот, например: http://www.tyumbit.ru/gal_forum/viewtop ... f=2&t=5330

Re: Галактика 5,84. Присоединенная форма

Добавлено: 19 фев 2013, 12:13
Den
тока через макрос, через провайдера нужного организовать подключение в БД и вытянуть данные.

Re: Галактика 5,84. Присоединенная форма

Добавлено: 21 фев 2013, 10:39
agrail
Подключился к бд, присоединил табличку, указал поля(5 штук). как в макросе привязать данную табличку putgsm к переменным шаблона: toplivo, bak, и т.д...имя шаблона - лежит в C:\gal\EXE_240912\Xls\M_TRANSP\RGSM_Rep.xlt

Re: Галактика 5,84. Присоединенная форма

Добавлено: 29 май 2013, 13:56
zna
Возникла смешная проблема по данной теме: перестала компилиться присоединённая rtf- форма, которая ранее компилилась нормально. Вызывается так:

Код: Выделить всё

#include \\galtest2\galsrv\130529Frn_resGkMks\DOGMKSPO_DOGPRN2.rtf
Отрабатывает компиляция мгновенно, никаких сообщений не получаю, ресурсник не создаётся и новая форма в списке не появляется. Если попробовать компилить текстовую форму, то всё проходит нормально. Что не так?