Ошибка при удалении из Pick

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

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

Ответить
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Ошибка при удалении из Pick

Сообщение Irina_ »

Здравствуйте. Возникла проблема. Надо воспользоваться интерфейсом Z_Staffcat::PickCatalog2.
Вызываю Runinterface( Z_Staffcat::PickCatalog2, integer(-11), comp(0), comp(100) ) ;
Множественный выбор сохраняется в маркере с именем CatalogsMarker. С маркерами не приходилось работать, а с Pick работала. Поэтому надо перебросить данные из маркера в Pick c заданным wList. Но предварительно нужно почистить Pick. Делаю delete Pick where (( word(99) == Pick.wList ));
При компиляции получаю ошибку: "Нет такой функции, поля или метода : DELETE D:\VIPer\Projects\Up_Pers\frm\Dialog_6t.vip"
Как решить проблему?
RAJAH
Местный житель
Сообщения: 932
Зарегистрирован: 18 фев 2008, 12:49

Re: Ошибка при удалении из Pick

Сообщение RAJAH »

Irina_ писал(а):Делаю delete Pick where (( word(99) == Pick.wList ));При компиляции получаю ошибку
Наверное, надо как-то так:

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

<<name_view>>.delete all pick where ((99 == pick.wlist));
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Ошибка при удалении из Pick

Сообщение Irina_ »

Здравствуйте. Большое спасибо, помогло. Как-то не подумала, что проблема может быть из-за этого. Обычно удаляла данные из таблиц в памяти, никогда не указывала имя view, проблем не было.
ira
Посетитель
Сообщения: 47
Зарегистрирован: 29 мар 2005, 17:49
Контактная информация:

Re: Ошибка при удалении из Pick

Сообщение ira »

Irina_ писал(а):Здравствуйте. Большое спасибо, помогло. Как-то не подумала, что проблема может быть из-за этого. Обычно удаляла данные из таблиц в памяти, никогда не указывала имя view, проблем не было.
Здравствуйте! Я думаю проблема не в отсутствии имени view, а в отсутствии ALL.
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Ошибка при удалении из Pick

Сообщение Irina_ »

Ira, Вы ошибаетесь. All не влияет на проблему. Собственно и логично, т.к. указано условие Where, по которому идет удаление.
Den
Местный житель
Сообщения: 1844
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Re: Ошибка при удалении из Pick

Сообщение Den »

странная ваще то ошибка. По идее так должно прокатывать. Так как если даже объявлена именовая вью в фейсе, то pick в этом случае засунется в эту вью.
Например все соберется :

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

interface delete123;
   create view t1
    from pick
   ;
 HandleEvent
   CmInit: delete pick where ((word(99)==pick.wlist));
 end;
end.
без варнинга

в так :

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

interface delete123;
   create view t1
!    from pick
   ;
 HandleEvent
   CmInit: delete pick where ((word(99)==pick.wlist));
 end;
end.
тоже успешно скомпиляется, но с варнингом :
10:09:15 │ Предупреждение: Неявное добавление таблицы PICK в логическую таблицу T1 (стр.10, поз.24 в C:\gal\example\123.vip)
│ CmInit: delete pick where ((word(99)==pick.wlist));

Наверное, что то связано с особенностью Вашего конкретного Dialog_6t.vip.
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Ошибка при удалении из Pick

Сообщение Irina_ »

Den, Вы правы. Не стала сразу подробно описывать, но сделаю это сейчас.
Из основного интерфейса, где описана view, вызываю интерфейс, в котором определяются параметры работы основного интерфейса, и здесь же удаляю записи из Pick. Проверено, что ошибки нет, если в интерфейсе ввода параметров:
1. задать именованный create view и удаление делать, используя имя view, как советовал RAJAH
2. задать просто create view без имени, тогда удаление можно делать, не ссылаясь на имя вью.
Просто ранее у меня не было необходимости чистить таблицу не в основном интерфейсе, а в интерфейсе задания параметров. Теперь буду знать, что в таком случае надо как минимум поступать по п.2.
Еще раз спасибо всем.
m0p3e
Местный житель
Сообщения: 1386
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Re: Ошибка при удалении из Pick

Сообщение m0p3e »

Но лучше все-таки маркером воспользоваться :)
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Ошибка при удалении из Pick

Сообщение Irina_ »

Возможно, так и сделаю с текущим фейсом, а может с каким-то будущим. Люблю пробовать разные варианты действий. Но только когда есть время, а когда во времени ограничена, то лучше использовать отработанный вариант. Уже были мысли попробовать работать с маркерами, хотя острой необходимости не было, т.к. использовала стандартные фейсы, где выбор сохраняется сразу в Pick. Хотя знаю, что многие интерфейсы работают с маркерами, а не с Pick.
Ответить