функции перехода между документами одного типа :) может кому будет интересно.

09.08.09

Разработка - Универсальные функции

собственно говоря, ИДЕЯ НЕ МОЯ, заказчик заказал, я реализовал, не судите слишком строго :):):)
но надеюсь комунить пригодиться механизм :):):)

//тут описан механизм перехода между документами

// функции помещаються в общие , ну и от туда работают, для любого  документа :)

//в качестве входящих параметров задаем ссылку на документ и ссылку на  текущую форму :)

 

Процедура СледующийНажатие(док,ТекФорма) Экспорт
 Запрос = Новый Запрос;
 Запрос.Текст = "ВЫБРАТЬ Первые 1
  | ОперацииЦБ.Ссылка КАК Ссылка
  |ИЗ
  | ";
  Запрос.Текст = Запрос.Текст+"Документ."+Док.ссылка.Метаданные().Имя+" 
КАК ОперацииЦБ
  |ГДЕ
  | ОперацииЦБ.МоментВремени > &МоментВремени
  |
  |УПОРЯДОЧИТЬ ПО
  | ОперацииЦБ.МоментВремени";
 Запрос.УстановитьПараметр("МоментВремени",док.МоментВремени());
 Результат = Запрос.Выполнить().Выгрузить();
 Если Результат.Количество()>0 тогда
 Формочка = Результат[0].Ссылка.ПолучитьОбъект().ПолучитьФорму();
 Формочка.ПоложениеОкна = ТекФорма.ПоложениеОкна;
 ТекФорма.Закрыть();
 Формочка.Открыть();
 Иначе Сообщить("Этот документ первый в списке 
документов",СтатусСообщения.Внимание);
 КонецЕсли;
КонецПроцедуры

Процедура ПредидущийНажатие(док,ТекФорма) Экспорт
 Запрос = Новый Запрос;
 Запрос.Текст = "ВЫБРАТЬ Первые 1
  | ОперацииЦБ.Ссылка КАК Ссылка
  |ИЗ
  | ";
  Запрос.Текст = Запрос.Текст+"Документ."+Док.ссылка.Метаданные().Имя+" 
КАК ОперацииЦБ
  |ГДЕ
  | ОперацииЦБ.МоментВремени < &МоментВремени
  |
  |УПОРЯДОЧИТЬ ПО
  | ОперацииЦБ.МоментВремени УБЫВ";
 Запрос.УстановитьПараметр("МоментВремени",док.МоментВремени());
 Результат = Запрос.Выполнить().Выгрузить();
 Если Результат.Количество()>0 тогда
 Формочка = Результат[0].Ссылка.ПолучитьОбъект().ПолучитьФорму();
 Формочка.ПоложениеОкна = ТекФорма.ПоложениеОкна;
 ТекФорма.Закрыть();
 Формочка.Открыть();
 Иначе Сообщить("Этот документ первый в списке 
документов",СтатусСообщения.Внимание);
 КонецЕсли;
КонецПроцедуры

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Универсальные функции Работа с интерфейсом Программист 1С v8.3 Бесплатно (free)

Порой необходимо временно отключить расширение 1С, не удаляя его, чтобы не потерять данные. Но в этом случае при каждом запуске всем будет лезть уведомление о неактивном расширении, хотя очевидно, это техническая информация, которой не стоит лишний раз пугать пользователей.

14.05.2025    4087    DeerCven    9    

49

Универсальные функции Программист 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Благодаря этим пяти строчкам можно больше не заморачиваться с загрузкой из внешних файлов. Пользуюсь везде, всегда и постоянно.

21.05.2024    43124    dimanich70    83    

158

Универсальные функции Программист 1С v8.3 1C:Бухгалтерия Абонемент ($m)

Задача: вставить картинку из буфера обмена на форму средствами платформы 1С.

1 стартмани

18.03.2024    6359    6    John_d    12    

58

Универсальные функции Программист Стажер 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Пришлось помучиться с GUID-ами немного, решил поделиться опытом, мало ли кому пригодится.

12.02.2024    52661    atdonya    31    

67

Универсальные функции Программист 1С v8.3 Бесплатно (free)

На заключительных этапах, когда идет отладка или доработка интерфейса, необходимо много раз переоткрыть внешний объект. Вот один из способов автоматизации этого.

30.11.2023    8117    ke.92@mail.ru    17    

67

WEB-интеграция Универсальные функции Механизмы платформы 1С Программист 1С v8.3 1C:Бухгалтерия Бесплатно (free)

При работе с интеграциями рано или поздно придется столкнуться с получением JSON файлов. И, конечно же, жизнь заставит проверять файлы перед тем, как записывать данные в БД.

28.08.2023    21667    YA_418728146    8    

174
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. -ioan- 15.02.12 13:03 Сейчас в теме
Отлично!
Единственное в первой процедуре надо заменить сообщение пользователю на:
Сообщить("Этот документ последний в списке
документов",СтатусСообщения.Внимание); ;)

Voldemar; +1 Ответить
4. yuraos 1008 16.02.12 11:25 Сейчас в теме
(1) -ioan-, поддерживаю!
а также можно проверять тип переменной 'ТекФорма'
Если передали не форму, просто открывать следующий документ в списке.
Может быть полезно,
если доступ к сервису делать через кнопку в форме списка документов
или в форме списка журнала документов.
2. black_doctor 95 15.02.12 13:48 Сейчас в теме
приятно, что есть наблюдательные люди :)
3. Voldemar 1 16.02.12 10:54 Сейчас в теме
Ну вот, опередили меня с поправкой текста сообщения... :)
Для отправки сообщения требуется регистрация/авторизация