Автономный Update

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Андрей
Старожил
Сообщения: 277
Зарегистрирован: 30 Октябрь 2005, 3:58

Автономный Update

Сообщение Андрей »

Прошу подсказать как можно сделать вызов Update процедуры не из стандартной связки Browse-Update ? Известен скажем идентификатор записи, по ключу можно ее найти. Как на кнопку повесить поиск записи и вызов Update процедуры (она уже есть в другом месте по стандартной схеме, ее же можно использовать или ее копию сделать ?)
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Автономный Update

Сообщение kreator »

Есть же GlobalRequest. Вот так, например:

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

SPR:ID_SPR = LOC:Object2ID
if ~Access:SPRAV.TryFetch(SPR:PrimaryKey)
  SNU:ID_IZD = SPR:ID_SPAR
  SNU:SN = LOC:ModulName
  if ~Access:SNUMBER.TryFetch(SNU:SNUMBER_IDX1)
    if ~LOC:PlatformName
      LOC:PlatformName = get_sprav(LOC:PlatformID, 5)
    end  
    GlobalRequest = ChangeRecord  ! InsertRecord
    UpdateSignals(SNU:ID_IZD, LOC:PlatformID, LOC:ModulName, SNU:ID_SN, LOC:PlatformName, LOC:PlatformID, 0, , , BRW7.Q.DEF:ID_DEF)
  else
  ...
На кнопку тоже можно повесить. В Actions прописать название процедуры и в "Requested File Action" выбрать "Change". Только нужно, чтобы до вызова этой процедуры был Fetch (Get) в нужную запись.
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7329
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Автономный Update

Сообщение Игорь Столяров »

1. В справке есть раздел HOW TO как раз на такие темы ...
2. Для изменения записи в BROWSE (или любом другом месте) просто вешаете на кнопку незамысловатый код:

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

     File.ID = MyID
     If ~Access:File.Fetch(File.ByID)
        GlobalRequest = ChangeRecord
        Form_File()
     end
3. Копирование делается несколько сложнее - см. п.1. там всё есть с примерами.
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Автономный Update

Сообщение kreator »

Игорь Столяров писал(а): 23 Июль 2020, 10:14 3. Копирование делается несколько сложнее - см. п.1. там всё есть с примерами.
ТС, я так понял, хочет копию существующей кнопки сделать. Шаблон, привязанный к стандартной кнопке "Change", всё равно не перенесётся. Только контрол.
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7329
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Автономный Update

Сообщение Игорь Столяров »

kreator писал(а): 23 Июль 2020, 11:39 всё равно не перенесётся.
А не надо шаблоны переносить. Пусть этим кларионисты занимаются ... ;)
Речь идёт о реализации нужного функционала вставкой нескольких строк кода. В справке всё есть - сам оттуда брал копирование записи.
За теми кто отстал - не возвращаться. (С) Кодекс
Ответить