Поговорим о JavaScript в 810

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Поговорим о JavaScript в 810

Сообщение zna »

Привет всем присутствующим! Посмотрел темы за последний год и не нашёл данный сабж. А в некоторых случаях это весьма полезная штучка.. Например: находимся в некотором плановом документе, например, в потребности в материалах, к которому подключен производственный заказ через "Входящие".
В java- алгоритме делаем цикл по cпецификации таблицы связей spobjass и для каждой позиции спецификации потребности в материалах отыскиваем соответствующие позиции ПЗ.
ObjAss.VhDoc(37,GetCurPl());
ObjAss.getFirst(); // Нашли заголовок таблицы связей
SpObjAss.UstOgrkZag(ObjAss.NrecObjAss);//Установили ограничение на спецификацию таблицы связей
SpObjAss.getFirst(); // Встали на первую запись в спецификации связей
Message(...); //Здесь выводим поля записи
Проблема: нахожу запись spobjass, а ссылки на спецификации ПотрМат и ПЗ не нахожу.
Изображение
Изображение
Кто-нить работал с этим объектом?
Johny
Местный житель
Сообщения: 291
Зарегистрирован: 29 мар 2005, 17:49
Откуда: С-Петербург
Контактная информация:

Сообщение Johny »

Добрый день. Как я понимаю общая задача такова: для позиций одного документа нужно что-то нарисовать из позиций другого документа связанного по входящим (исходящим).
Приведу пример скрипта, если надо скину на мыло скриншоты по настройке объектов.

//алгоритм работает из заявки. и выставляет во все исходящие планы
//аналатику 2 (№ чертежа) равной аналитике заявки.

Indent.setPosition(getCurIndent());
Objacct.Look(toIndent,getCurIndent());
for (Objacct.getFirst();ResultOfNavigation;Objacct.getNext())
{
SpObjacc.ToHead(Objacct.Nrec);
for (SpObjacc.getFirst();ResultOfNavigation;SpObjacc.getNext())
{
Claim.setPosition(SpObjacc.From);
SpMnPl.setPosition(SpObjacc.To);
SpMnPl.Kod2=KodKau;
SpMnPl.Role2=RoleKau;
SpMnPl.KAU2=Claim.KAU5;
SpMnPl.rewrite();

SpMnPlan.setPosition(SpMnPl.cSpMnPlan);
SpMnPlan.Kod2=KodKau;
SpMnPlan.Role2=RoleKau;
SpMnPlan.KAU2=Claim.KAU5;
SpMnPlan.rewrite();
}
}
Безвыходных ситуаций не бывает: DO LOOP WHILE TRUE
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Да, Johny, задача именно такая. Буду признателен, если скинете настройки объектов на naz@ap-plastic.ru
Спасибо за ответ.
Fedora
Сообщения: 10
Зарегистрирован: 29 мар 2005, 17:49
Откуда: СПб

Сообщение Fedora »

А можно и мне скинуть на U.FEDORENKO@jscez.spb.ru.
Местный житель
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Добрый день, коллеги! Помогите, кто может, с удалением позиций из объекта spobjass при помощи Java. Имеется метод delete(), удаляющий текущую позицию, но если применять его в цикле по таблице, позиции которых надо удалить, то похоже, возникают проблемы и ничего не происходит. Кто-нить решал подобную задачу?
В випе используется буфер, в джаве буфера нет..
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Разобрался с этим- для таблицы спецификации связей надо использовать специализированный метод.
Ещё вопрос к специалистам: как сформировать протокол в jav'e? В хелпнике есть описание функций работы с протоколом (типа RunProtocol), но из какой библиотеки они достаются, я не нашёл. Кто- нибудь решал подобную задачу?
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Вопрос снимается, увидел библиотеку.. :shock:
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Проясните, кто в теме, пож., такую ситуацию: находимся в плановом документе, java- алгоритмом отыскиваем привязанную накладную на внутреннее перемещение в производстве (тип 506). Требуется перевести её в тип 600- накладную на внутреннее перемещение на складе. Для этого модифицируем katsopr.vidsopr->600 и пытаемся тоже сделать с полем spsopr.vidsopr->600.
Проблема: модификация katsopr сохраняется, модификация spsopr не сохраняется :eek:
Objacc.toIshDoc(PrZak,CurMnPlan(),44); //Все исходящие накладные
for(Objacc.getFirst();ResultOfNavigation;Objacc.getNext())
{
Sopr.setPosition(Objacc.NrecKuda);
if(Sopr.vidsopr == 506) //Накладная на внутреннее перемещение в производстве
{
Sopr.vidsopr = 600;
...
Sopr.rewrite();
SpNrec = Sopr.Nrec;
}
}
SpSopr.toSopr(SpNrec); //Нашли все спецификации накладной
for(SpSopr.getFirst();ResultOfNavigation;SpSopr.getNext())
{
SpSopr.VidSp = 600;
....
SpSopr.rewrite();
}
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Вопрос актуален :)
zna
Местный житель
Сообщения: 552
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Челябинск
Контактная информация:

Сообщение zna »

Добрый день, уважаемые!
Продолжаю данную тему очередным вопросом, ответьте, кто сталкивался с выводом протокола из Jav'ы: Как использовать функцию сортировки ItemsSort(...), как связать наименование полей с параметрами? Может, есть примерчик у кого?
Ответить