Пометка записей

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

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

Ответить
spark
Местный житель
Сообщения: 478
Зарегистрирован: 19 окт 2005, 13:38
Контактная информация:

Пометка записей

Сообщение spark »

Добрый день!

Как вообще без исходников можно вычислить каким способом помечаются записи в интерфейсе и где эта пометка хранится, чтобы получить к ней доступ? Везде разные подходы.

Есть вот, например, интерфейс Z_PAYREP::VIEWREESCOMBO. Это реестры на перечисления в ЗП. Что в нем происходит по инсерту? Где хранится пометка?
Всю голову уже поломал =)
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Пометка записей

Сообщение Irina_ »

Здравствуйте.
Я когда-то задала вопрос сотруднику ОТП о хранении пометки в интерфейсах для использования в своих отчетах. Получила ответ, что для части интерфейсов пометка сохраняется в Pick, а для части в маркерах. Выбор бухсчетов сохраняется в маркере и одновременно в табл. PickBuh. Тогда же дал файлик DocPick.txt с описанием ряда интерфейсов и параметрами, где приведены значения Pick.wList.
С маркерами сложнее, без исходника или без уточнения в ОТП трудно узнать имя маркера для интерфейса.
Irina_
Местный житель
Сообщения: 555
Зарегистрирован: 17 июл 2012, 11:56
Откуда: Республика Беларусь, г.Могилев

Re: Пометка записей

Сообщение Irina_ »

Или здесь viewtopic.php?t=8536 давали совет. Может поможет.
spark
Местный житель
Сообщения: 478
Зарегистрирован: 19 окт 2005, 13:38
Контактная информация:

Re: Пометка записей

Сообщение spark »

Irina_ писал(а):Или здесь viewtopic.php?t=8536 давали совет. Может поможет.
Спасибо!

Грустно конечно, что нет какой-то в этом вопросе стандартизации.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5188
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Re: Пометка записей

Сообщение edward_K »

1. Если есть отдельное поле, то вычислите на нем getifccurrentfieldname. Как правило это будет Picked. В консоле управления можно посмотреть логическую таблицу. В данном случае

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

    if(IsValid(tnSBBAN), FoundMarker(MarkVipl, SBBAN.NREC), false)
    (fieldname = Marked),
    if(Marked, 'V', '')
    (fieldname = Mark),
....
    MarkVipl := InitMarker(if((ModeView and vfCanSelect) = vfCanSelect, 'VedRees_Marker',''), 8, 200, 100);
Для маркера где то тут вроде был совет как посмотреть в DSK.
2. Если отдельного поля нет, то скорей всего это будет объект IMarker. Он куда то еще пишет(не искал) и иногда также сохраняет в Pick и/или в Marker.
По исходникам оно конечно проще. Пишите в ОТП с getifccurrentfieldname или здесь.
Кроме маркера еще может использоваться Pick, ForMarks, иногда временные таблицы, может быть и маркер , но со хранением на DSK а в таблицах - есть пара объектов на этот счет.
Ответить