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

09.08.09

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

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

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

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

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

 

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

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

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

См. также

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

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

14.05.2025    5037    DeerCven    14    

57

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

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

21.05.2024    45316    dimanich70    83    

161

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

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

1 стартмани

18.03.2024    6717    6    John_d    13    

59

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

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

12.02.2024    55857    atdonya    31    

68

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

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

30.11.2023    8474    ke.92@mail.ru    17    

67

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

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

28.08.2023    22430    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 Сейчас в теме
Ну вот, опередили меня с поправкой текста сообщения... :)
Для отправки сообщения требуется регистрация/авторизация