Как найти документ который не проведен 1с

Ваша заявка принята. Мы решим ваш вопрос в течение 2-х рабочих часов!

Спасибо! Ваша заявка принята.
Мы свяжемся с вами в ближайшее время!

Спасибо! Мы свяжемся с вами через несколько минут

Вопрос:

Как в журнале поступлений или же реализаций вывести только не проведенные документы в программе 1С: Бухгалтерия предприятия, редакция 3.0?

Ответ:

В программе 1С: Бухгалтерия предприятия редакция 3.0, данную настройку может произвести любой пользователь. Для этого зайдите в журнал, где требуется подобное оформление, на примере мы разберем «Поступления (акты, накладные)», далее по кнопке «Еще» – «Настроить список» (рис.1). В открывшемся окне переходите во вкладку «Отбор» – «Добавить новый элемент» – там выбираете «Проведен» – «Равно» – «Нет» (рис.2) – «Завершить редактирование». После это сформируется список не проведенных документов, а сверху появится поле быстрого доступа, где можно убрать этот отбор или вернуть на место (рис.3).

Свидетельство о регистрации СМИ: Эл № ФС77-67462 от 18 октября 2016 г.
Контакты редакции: +7 (495) 784-73-75, smi@4dk.ru

Поздравляем! Вы успешно подписались на рассылку

Внешняя обработка по поиску проведенных документов, которые не сделали движения в Журнале проводок, для конфигурации Бухгалтерия предприятия 2.0 и Комплексная автоматизация 1.1.

  • Описание
  • Характеристики
  • Комментарии (0)

Внешняя обработка по поиску проведенных документов, которые не сделали движения в Журнале проводок, для конфигурации Бухгалтерия предприятия 2.0 и Комплексная автоматизация 1.1.

Как правило, такие ситуации возникают после обмена между конфигурациями, которые по структуре отличаются друг от друга). Обычно в таких случаях помогает простое перепроведение документов. Но чтобы не перепроводить все документы подряд, а только те, по которым нет проводок, и придумана эта обработка.

Порядок действий с обработкой такой:

  1. задайте период (при необходимости);
  2. сделайте отбор по организации (необязательно);
  3. выберите тип документа;
  4. нажмите ‘Заполнить таблицу’.

После этого табличное поле обработки заполнится документами, соответствующими вашим критериям отбора, которые проведены но не делают проводок в журнале бухгалтерии. Документы в таблице выстроятся в хронологическом порядке.

Нажав на кнопку ‘Провести’ запустится автоматическое перепроведение всех документов, перечисленных в таблице.

Артикул 148
Цена, 100
Наличие демо-версии
Тип файла Внешняя обработка (*.epf)
Изменение конфигурации Не требуется
Совместимость
  • Бухгалтерия предприятия 2.0
  • Комплексная автоматизация 1.1
  • Управление производственным предприятием 1.3

В этом видео подробно показано, как создать пользователя информационной базы 1с 8.х.

В этом видео подробно показано как сторнировать движения документов в 1с 8 на примере Бухгалтерии предприятия 2.0

В данной статье я дам некоторые практические рекомендации для тех, что хочет стать программистом 1С.

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

Документы

Описание:

Документ — одно из основных понятий системы 1С:Предприятие. При помощи документов организуется ввод в систему информации о совершаемых хозяйственных операциях, а также ее просмотр и корректировка.

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

Структура каждого конкретного вида документа определяется при его создании в конфигураторе. У любого вида документа существуют реквизиты, которые создаются автоматически — это “Дата” и “Номер”. Номер создается, если при конфигурировании длина номера указана больше 0. Другие реквизиты документа определяются в конфигураторе отдельно для каждого создаваемого вида документа.

Документы в языке 1С 8.3, 8.2 (в примерах)

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Подписывайтесь и получайте новые статьи и обработки на почту (не чаще 1 раза в неделю).

Вступайте в мою группу ВКонтакте, Одноклассниках, Facebook или Google+ — самые последние обработки, исправления ошибок в 1С, всё выкладываю там в первую очередь.

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Нажмите одну из кнопок, чтобы поделиться:

Последовательность в 1С Предприятие 8.3 – это объект метаданных, позволяющий контролировать хронологический порядок документов. Это важно при учете списания материалов, взаиморасчетах с контрагентами, например, при проведении документа оприходования задним числом будет некорректно определена стоимость ранее списанных материалов, так как при списании ТМЦ были проанализированы данные на момент проведения документа списания.

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

Если мы откроем 1С в режиме Конфигуратора и развернем узел «Документы» дерева метаданных, то увидим строку «Последовательности».


Рис.1 Здесь мы используем «1С:Бухгалтерия предприятия 3.0»


Рис.2 Дерево «1С:Управление торговлей 11.3»

Данные последовательности описывают документы, входящие в нее, и определяют механизмы, позволяющие перепровести их при необходимости. Если мы откроем последовательность и перейдем на закладку «Использование», увидим список документов входящих в нее.


Рис.3 Пример в «1С:Бухгалтерии предприятия 3.0»

В 1С:УТ мы видим список регистров, влияющих на последовательность.


Рис.4 На примере 1С:УТ 11.3

На этой же вкладке устанавливается режим перемещения границы последовательности при проведении. Возможны варианты «Перемещать» и «Не перемещать», определяющие возможность автоматического передвижения границы.

Восстановление последовательностей 1С

Откроем «1С:Бухгалтерия 3.0» в пользовательском режиме. В данной конфигурации важен контроль изменений – перепроведение и ввод «задним числом». Рассмотрим, как программа выполнит перепроведение с момента, когда было обнаружено нарушение.

При закрытии месяца

Для примера мы намеренно перепровели один документ. Выполняя процедуру, программа обнаружила нарушение, о чем сообщает пользователю и предлагает решение в виде перепроведения.


Рис.5 При «Закрытии месяца» автоматом контролируется правильность последовательности

При этом пользователь может выбрать, работает он с документами предыдущих периодов или только с текущими. Взятый для примера был изменен в текущем периоде – январе, поэтому мы смело ставим «Закрыть только Январь 2019».

Также перед закрытием мы можем принудительно выполнить перепроводку, нажав на соответствующую гиперссылку. В этом случае мы видим то же самое окошко с отличающимися вариантами действий. Система предлагает перепровести документы с января или же просто игнорировать предупреждение о нарушении последовательности, установив «Перепроведение не требуется».


Рис.6 Принудительное перепроведение

Нажатие по гиперссылке «1 документ», откроет отчет со списком измененных документов за период, и мы проанализируем, надо ли их перепровести.


Рис.7 Отчет об изменениях

Тут выбор за пользователем, но все же восстановление хронологии и перепроводка необходимы для подстраховки от неправильного расчета данных.

Перепроводка и установка границ в разделе «Все функции»

Можно использовать нашу стандартную обработку через раздел «Все функции». Если данный он недоступен, включить его можно в пункте меню «Сервис-Параметры», активировав команду ее отображения.


Рис.8 Отображать все функции

В «Стандартных» мы увидим нужный нам пункт.


Восстановить границу можно на одноименной закладке и по одноименной команде. Это необходимо в том случае, если перепроведение не требуется, а нужно просто восстановить хронологию.


У нас граница на дате 01.01.0001. Поскольку мы видели в конфигураторе, что стоит режим – «Не перемещать», дата границы постоянно в одном положении и не изменяется.

Вернемся на закладку перепроведения. Установив период, с помощью кнопок «Добавить» (при необходимости «Удалить») выберем документы необходимые к проводке. Обратим внимание на галочки вверху. Отметим, что перепроводить мы будем только проведенные документы. Если имеются непроведенные документы, то лучше пользователю их проработать, просмотреть отдельно.


Нажав кнопку «Провести», выбранные документы перепроводятся в хронологической последовательности.

Обработка «Групповое перепроведение документов»

В разделе все функции доступна обработка «Группового перепроведения» (узел «Обработки»).


В данной обработке нет выбора документов, а указывается только период проведения.


Нажав кнопку «Выполнить», документы проводятся за выбранный период.

Несмотря на имеющийся выбор вариантов, первый рассмотренный нами способ – при поведении в закрытии месяца, является максимально удобным в «Бухгалтерии».

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

Первый способ. Поиск в форме списка документов

Всего в программе есть три списка документов разделенных по типам: Внутренние Документы, Входящие Документы, Исходящие Документы.  Данный способ подходит для случая, когда вы наверняка знаете к какому типу документов относится искомый документ. По умолчанию все три списка выглядят одинаково. В каждом из них можно использовать любой из следующих вариантов.

a. Быстрые отборы

В шапке форме списка есть группа быстрых отборов. Можно делать отборы только по одному реквизиту или по нескольким:

1.png

Поиск будет происходить в выбранном реквизите по точному совпадению.

2.png

Также на форму можно вывести дополнительные отборы через “Еще” -”Настройки”-”Изменить форму” установив или сняв галочками виды отборов:

3.png

Не забывайте снимать отборы (нажать на крестик в поле быстрого поиска), иначе ваш выбор сохранится при повторном открытии формы и вы увидите только отобранные ранее документы. 

б. Поле поиска

4.png

Поиск происходит только по полям выведенным в списке (которые мы видим на экране, а не по всем реквизитам документа) и поиск происходит по части строки. Найденные вхождения выделяются зеленым цветом:

5.png

При наличие большого количества документов в базе для ускорения времени поиска рекомендуется сделать также быстрый отбор по периоду. Например, текущий год.

в. Расширенный поиск

При необходимости искать по конкретному реквизиту который мы видим в списке, можно воспользоваться расширенным поиском:

6.png

В поле “Где искать” можно выбрать только те реквизиты, которые выведены на форму (которые мы видим на экране).

7.png

В отличие от поиска через быстрые отборы или поле поиска мы можем выбрать как искать: по началу строки, по части строки, по точному совпадению.

8.png

Чтобы снова увидеть все документы, нужно нажать на крестик в текущем отборе, который появился над списком документов.

г. Настройка списка

Если вы часто пользуетесь какими-то отборами через поле поиска или расширенный поиск, то можно сохранить их через “Еще”- “Настройки” – “Настроить список”

На вкладке “Отбор” можно выбрать любой реквизит документа из левой колонки “Доступные поля” и кликнуть по нему два раза (1), выбрать вид сравнения(2) и с чем сравнивать (3), после этого сохранить настройки нажав “Завершить редактирование”.

9.png

В шапке формы появятся наши персональные настройки:

10.png

Теперь можно менять значения в сохраненных настройках. Чтобы снова увидеть весь список без отборов нужно снять галочки возле названия реквизита, по которому происходит поиск.

Чтобы совсем удалить с формы эти настройки требуется перейти повторно в настройки списка на вкладку отборы и нажать “Удалить”.

д. Показывать помеченные на удаление

В случае, если документ был помечен на удаление или была нажата кнопка “Delete”, он пропадает из общего списка документов. Если администратор вашей базы или фоновое задание, которое выполняется по расписанию еще не успели удалить все помеченные на удаление объекты, то восстановить такой документ можно, что через “Еще”-”Настройки”- “Показывать удаленные”. Тогда документ появится в списке в зачеркнутом виде:

11.png 

Останется только нажать “Еще “- “Документы”-“Пометить на удаление/Снять пометку”

e.  Настройка просмотра

В меню “Еще”- “Просмотр” можно выбрать варианты просмотра документов, при котором в левой колонке появляется список того, по чему можно сгруппировать документы:

12.png

При этом если в левой колонке выделить один из элементов, то  в списке документов происходит отбор по выделенному элементу:

13.png

Второй способ. Обработка “Поиск документов и файлов”

Данная обработка находится в разделе “Документы и файлы”- “Сервис”. И подходит для поиска по всем трем типам документов, а также по всем реквизитам документов. Требуется выбрать область поиска (1), например, по всем типам документов или только по одному, что искать(2) по одному или нескольким реквизитам и запустить поиск (3).

В примере ниже поиск происходит по всем типам документов, у которых в реквизите “Содержание” есть текст “строит”, чтобы найти все слова “строительный”, “строитель”, “перестроить” и т.п.

14.png

Результат будет выглядеть в виде отдельных списков из найденных документов:

15.png

Третий способ. Полнотекстовый поиск

Полнотекстовый поиск находится в “Документы и файлы”- “Сервис” или по значку лупы справа наверху возле имени пользователя, под которым вы вошли в программу:

16.png

Третий способ производит поиск по всей информации, которая есть в информационной базе. Это может быть как значение поля карточки документа, так и название этого реквизита или папки в котором он находится или любой другой объект базы. Также поиск происходит по содержимому прикрепленного к карточке файла и всех его версий.

17.png

Четвертый способ. Список “Мои документы”

Cписок “Мои документы” находится в “Документы и файлы” – “Мои документы” и на начальной странице, если у вас там выведен виджет “Мои документы” на форме “Текущие дела”.

18.png

19.png

В этом списке находятся документы, которые относятся к вам и по которым могут требоваться какие-то действия: 

  • все документы, по которым вам направлена задача. После выполнения задачи документы перестанут отображаться в списке;

  • все документы, по которым вы направили задачу другому сотруднику. После выполнения задачи документы также перестанут отображаться в списке;

  • входящие документы, созданные вами. Документы исчезнут из списка после регистрации;

  • исходящие документы, созданные вами. Документы исчезнут из списка после регистрации и отправки;

  • внутренние документы, созданные вами. Документы исчезнут из списка после регистрации и исполнения;

  • документы, за которые вы назначены ответственным. Эти документы можно исключить из списка только вручную.

Подпишитесь на дайджест!

Подпишитесь на дайджест, и получайте ежемесячно подборку полезных статей.

Пятый способ. Отчеты

В программе предусмотрено большое количество настроенных отчетов. Отчеты по документам находятся в “Документы и файлы” – “Отчеты”. С помощью этих отчетов можно найти документ по разным критериям исходя из названия отчета.

20.png

Например, отчет “Неподписанные внутренние документы”:

21.png

Кликнув в отчете на найденный документ откроется карточка этого документа.

Шестой способ. По контрагенту

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

22.png

23.png

Седьмой способ. Категории (доступен только в версии КОРП и ДГУ)

При включенной настройки Категорий (настройка на уровне всей программы) в документах появляется вкладка “Категории”.

24.png

Категории – это дополнительная классификация или теги документов.  Категории можно устанавливать вручную или автоматически по настроенным критериям.  После этого в “Документы и файлы” – “Категории” можно подобрав категории сразу найти все подходящие по отбору документы.

25.png

Восьмой способ. Поиск по штрихкоду (доступен только в версии КОРП и ДГУ)

В КОРП /ДГУ версии каждому документу по умолчанию назначается штрихкод. Штрихкод можно визуально установить программно в прикрепленном файле или распечатать на наклейке при наличии специального оборудования для печати наклеек. После этого при подключенном сканере шрихкодов можно отсканировать штрихкод и в программе откроется нужная карточка этого документа.

26.png

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

27.png

Поиск можно производить по номеру штрихкода без подключенного сканера штрихкодов. Такой поиск вызывается сочетанием клавиш Ctrl+Shift+I.

28.png

Девятый способ. Избранное и История

Список документов (и других ссылок в программе), которые были добавлены в избранное или список последних просмотренных документов, доступны по соответствующим значкам справа наверху возле имени текущего пользователя.

Избранное:

29.png

30.png

История (Список последних):

31.png

32.png

Также эти списки можно вывести на начальной странице с помощью Настройки – Настройки начальной страницы:

33.png

34.png

Чтобы добавить документ в избранное нужно нажать на значок звездочки возле наименования документа:

35.png

Десятый способ. Как найти физическое местоположение документа

а. Журнал передачи

36.png

Запись журнала передачи можно внести (по кнопке “создать”) на контактное лицо Контрагента или на нашего сотрудника. В этом же списке можно видеть всю историю передач по этому документу.

37.png

Проводить сводный анализ переданных документов можно по общему списку журнала передачи (“Документы и файлы” – “Журнал передачи”)

38.png

или по отчетам в разделе “Документы и файлы” – “Отчеты” – “По всем документам”:

39.png

б. Учет документов по местам хранения

При включенной настройки учета по местам хранения в видах документа можно вести учет по местам хранения и ответственным лицам за хранение. В месте хранения можно указывать заранее введенные места из справочника или в виде произвольной строки.

40.png

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

/// Как выбрать и упорядочить документы за период
/// в 1с 8.3, 8.2
 
&НаСервере
Процедура КакВыбратьИУпорядочитьДокументыЗаПериодНаСервере()
 
    // найдём все документы поступления еды за 2014 год
    // упорядочив их по возрастанию даты
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Ссылка
        |ИЗ
        |   Документ.ПоступлениеЕды КАК ПоступлениеЕды
        |ГДЕ
        |   Дата МЕЖДУ &НачДата И &КонДата
        |УПОРЯДОЧИТЬ ПО
        |   Дата ВОЗР";
 
    Запрос.УстановитьПараметр("НачДата", '20140101');
    Запрос.УстановитьПараметр("КонДата", '20141231');
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДокументов = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДокументов.Следующий() Цикл
        Сообщить(ВыборкаДокументов.Ссылка);
    КонецЦикла;
 
КонецПроцедуры
 
/// Как найти документ по номеру в 1с 8.3, 8.2
 
&НаСервере
Процедура КакНайтиДокументПоНомеруНаСервере()
 
    // найдём поступление еды № ВМБП-000005 за 2014 год
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Ссылка
        |ИЗ
        |   Документ.ПоступлениеЕды КАК ПоступлениеЕды
        |ГДЕ
        |   Дата МЕЖДУ &НачДата И &КонДата И
        |   Номер = &ВыбНомер";
 
    Запрос.УстановитьПараметр("НачДата", '20140101');
    Запрос.УстановитьПараметр("КонДата", '20141231');
    Запрос.УстановитьПараметр("ВыбНомер", "ВМБП-000005");
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДокументов = РезультатЗапроса.Выбрать();
 
    Если ВыборкаДокументов.Следующий() Тогда
        Сообщить(ВыборкаДокументов.Ссылка);        
    Иначе
        Сообщить("Документ с таким номером не существует!");
    КонецЕсли;
 
КонецПроцедуры
 
/// Как найти документы по реквизиту в 1с 8.3, 8.2
 
&НаСервере
Процедура КакНайтиДокументПоРеквизитуНаСервере()
 
    // найдём все документы поступления еды
    // от поставщика ООО "Поле"
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Ссылка,
        |   Поставщик
        |ИЗ
        |   Документ.ПоступлениеЕды КАК ПоступлениеЕды
        |ГДЕ
        |   Поставщик = &ВыбПоставщик
        |УПОРЯДОЧИТЬ ПО
        |   Дата ВОЗР";
 
    Запрос.УстановитьПараметр(
        "ВыбПоставщик",
        Справочники.Поставщики.НайтиПоНаименованию("ООО ""Поле""")
    );
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДокументов = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДокументов.Следующий() Цикл        
        Сообщить(
            Строка(ВыборкаДокументов.Ссылка) + " " + 
            ВыборкаДокументов.Поставщик
        );
    КонецЦикла;
 
КонецПроцедуры
 
/// Как выбрать все документы, которые не проведены и
/// не помечены на удаление в 1с 8.3, 8.2
 
&НаСервере
Процедура КакВыбратьВсеДокументыКоторыеНеПроведеныИНеПомеченыНаУдалениеНаСервере()
 
    // найдём не проведенные и не помеченные на удаление
    // документы поступления еды
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   Ссылка,
        |   Проведен,
        |   ПометкаУдаления        
        |ИЗ
        |   Документ.ПоступлениеЕды КАК ПоступлениеЕды
        |ГДЕ
        |   Проведен = ЛОЖЬ И
        |   ПометкаУдаления = ЛОЖЬ
        |УПОРЯДОЧИТЬ ПО
        |   Дата ВОЗР";
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДокументов = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДокументов.Следующий() Цикл
        Сообщить(
            Строка(ВыборкаДокументов.Ссылка) + " " + 
            ВыборкаДокументов.Проведен + " " +
            ВыборкаДокументов.ПометкаУдаления
        );
    КонецЦикла;
 
КонецПроцедуры
 
/// Как найти подчиненные документы в 1с 8.3, 8.2
 
&НаСервере
Процедура КакНайтиПодчиненныеДокументыНаСервере()
 
    // Рассмотрим работу с подчиненными (связанными) документами
    // на примере документов: ПоступлениеТоваровУслуг и СчетФактураПолученный.
 
    // Документ СчетФактураПолученный вводится на основании документа
    // ПоступлениеТоваровУслуг, то есть счет фактура является подчиненной
    // по отношению к поступлению.
 
    // Факт подчиненности обычно (в типовых) фиксируется в самом подчиненном
    // документе через табличную часть ДокументыОснования.
    // Почему через табличную часть? Потому что один документ может зависеть
    // (быть подчиненным) сразу от нескольких родителей (оснований).
 
    // Пример №1.
    // У нас есть ссылка на поступление товаров и услуг. Требуется найти
    // счёт-фактуры, которые были введены на основании этого поступления.
    // В дереве подчиненности эти фактуры будут подчинены (зависимы) от
    // документа поступления.
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    Ссылка
        |ИЗ
        |    Документ.СчетФактураПолученный.ДокументыОснования КАК
        |    СчетФактураПолученныйДокументыОснования
        |ГДЕ
        |    СчетФактураПолученныйДокументыОснования.ДокументОснование =
        |    &ВыбПоступление";
 
    Запрос.УстановитьПараметр("ВыбПоступление", 
        Документы.ПоступлениеТоваровУслуг.НайтиПоНомеру("0000-000004", '20160101')
    );
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        ПодчиненнаяФактура = ВыборкаДетальныеЗаписи.Ссылка;
        Сообщить(ПодчиненнаяФактура);
    КонецЦикла;
 
    // Пример №2.
    // У нас есть ссылка на счет-фактуру полученную. Требуется найти,
    // документы, на основании которых она была введена (родителей).
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    ДокументОснование
        |ИЗ
        |    Документ.СчетФактураПолученный.ДокументыОснования КАК
        |    СчетФактураПолученныйДокументыОснования
        |ГДЕ
        |    СчетФактураПолученныйДокументыОснования.Ссылка =
        |    &ВыбСчетФактура";
 
    Запрос.УстановитьПараметр("ВыбСчетФактура",
        Документы.СчетФактураПолученный.НайтиПоНомеру("0000-000007", '20160101')
    );
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        РодительФактуры = ВыборкаДетальныеЗаписи.ДокументОснование;
        Сообщить(РодительФактуры);
    КонецЦикла;
 
КонецПроцедуры
 
///  Как перебрать (перечислить) строки табличной части документа в 1с 8.3, 8.2
 
&НаСервере
Процедура КакПеречислитьСтрокиИзТабличнойЧастиДокументаНаСервере()
 
    // У документа ПоступлениеЕды есть табличная часть 'Еда'.
    // У этой табличной части есть колонки: Номенклатура, Количество,
    // Сумма.
 
    ПоступлениеСсылка = 
        Документы.ПоступлениеЕды.НайтиПоНомеру(
            "ВМБП-000002", '20141231');    
 
    // перечислим строки табличной части этого документа
 
    // при помощи объектной техники
 
    Для Каждого Строка Из ПоступлениеСсылка.Еда Цикл
        Сообщить(
            Строка.Номенклатура.Наименование + " " +
            Строка.Количество + " шт. " + 
            Строка.Сумма + " руб."
        );
    КонецЦикла;
 
    // при помощи запроса    
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   ПоступлениеЕдыЕда.Номенклатура,
        |   ПоступлениеЕдыЕда.Количество,
        |   ПоступлениеЕдыЕда.Сумма
        |ИЗ
        |   Документ.ПоступлениеЕды.Еда КАК ПоступлениеЕдыЕда
        |ГДЕ
        |   ПоступлениеЕдыЕда.Ссылка = &ВыбПоступление";
 
    Запрос.УстановитьПараметр("ВыбПоступление", ПоступлениеСсылка);
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
 
        Сообщить(
            ВыборкаДетальныеЗаписи.Номенклатура.Наименование + " " +
            ВыборкаДетальныеЗаписи.Количество + " шт. " + 
            ВыборкаДетальныеЗаписи.Сумма + " руб."
        );
 
    КонецЦикла;
 
КонецПроцедуры
 
&НаСервере
Процедура СозданиеИИзменениеДокументовНаСервере()
 
    /// Как создать новый документ в 1с 8.3, 8.2
 
    // создадим новый документ поступление еды
    Поступление = Документы.ПоступлениеЕды.СоздатьДокумент();
    // заполним шапку документа
    Поступление.Дата = ТекущаяДата();
    Поступление.Поставщик = 
        Справочники.Поставщики.НайтиПоНаименованию(
            "ООО ""Кузбас"""
        );
    Поступление.Склад =
        Справочники.Склады.НайтиПоНаименованию(
            "Основной"
        );
    // заполним табличную часть Еда
    НоваяСтрока = Поступление.Еда.Добавить();
    НоваяСтрока.Номенклатура =
        Справочники.Еда.НайтиПоНаименованию(
            "Банан"
        );
    НоваяСтрока.Количество = 10;
    НоваяСтрока.Сумма = 550;
 
    /// Как записать документ в 1с 8.3, 8.2
 
    Поступление.Записать(РежимЗаписиДокумента.Запись);
 
    /// Как провести документ в 1с 8.3, 8.2
 
    Поступление.Записать(РежимЗаписиДокумента.Проведение);
 
    /// Как отменить проведение документа в 1с 8.3, 8.2
 
    Поступление.Записать(РежимЗаписиДокумента.ОтменаПроведения);
 
    /// Как внести изменения в документ по ссылке в 1с 8.3, 8.2
 
    // зачастую у нас есть только ссылка на документ
    // и чтобы по ней получить сам объект документа
    // для изменения нужно вызывать метод ПолучитьОбъект
 
    // найдём документ продажа еды под номером ВМБП-000001
    // для лаконичности примера воспользуемся не запросом,
    // а объектной техникой
 
    СсылкаНаПродажу = Документы.ПродажаЕды.НайтиПоНомеру(
        "ВМБП-000001",
        '20141231' // поиск среди документов 2014 года
     );
    // нам вернули не сам документ, а ссылку (указатель) на него
 
    // проверим - нашёлся ли вообще документ    
    Если СсылкаНаПродажу.Пустая() Тогда
        Сообщить("Документ не найден.");
    Иначе
        // получим сам документ по ссылке
        Продажа = СсылкаНаПродажу.ПолучитьОбъект();
        // вот его уже можно изменять и записывать
        Продажа.Клиент = 
            Справочники.Клиенты.НайтиПоНаименованию(
                "Пётр"
            );
        Продажа.Записать();
    КонецЕсли;
 
    /// Как получить пустую ссылку типа документ в 1с 8.3, 8.2
 
    ПустаяСсылка = Документы.ПродажаЕды.ПустаяСсылка();
    Если ПустаяСсылка.Пустая() Тогда
        Сообщить("Ссылка действительно пустая.");
    КонецЕсли;
 
    /// Как скопировать существующий документ в 1с 8.3, 8.2
 
    // скопируем найденный документ на продажу и запишем
    // как новый документ от сегодняшнего числа
 
    КопияПродажи = СсылкаНаПродажу.Скопировать();
    КопияПродажи.Дата = ТекущаяДата();
    КопияПродажи.Комментарий = "Копия документа " + 
        Строка(СсылкаНаПродажу);
    // запишем и проведём документ
    КопияПродажи.Записать(РежимЗаписиДокумента.Проведение);
 
    /// Как заблокировать документ перед изменениями 
    /// в 1с 8.3, 8.2
 
    // выполним блокировку документа
    // от изменения другими режимами или пользователями
 
    Продажа = СсылкаНаПродажу.ПолучитьОбъект();
    Если Не Продажа.Заблокирован() Тогда
        Продажа.Заблокировать();
        // тут идёт какой-то долгий алгоритм
        // в результате которого мы меняем
        // заблокированный элемент
        Продажа.Комментарий = "Документ изменён.";
        Продажа.Записать();
        // и только потом освобождаем его
        // для других режимов и пользователей
        Продажа.Разблокировать();
    КонецЕсли;
 
    /// Как создать новый документ на основании другого объекта
    /// в 1с 8.3, 8.2
 
    // создадим документ продажа на основании поступления
    // скопировав из поступления табличную часть
 
    // в модуле документа ПродажаЕды я определил процедуру
    // ОбработкаЗаполнения, которая обрабатывает ситуации
    // когда мы заполняем один элемент на основании
    // данных другого (см. в базе для скачивания)
 
    ПродажаНаОсновании = Документы.ПродажаЕды.СоздатьДокумент();
    ПродажаНаОсновании.Дата = ТекущаяДата();
    ПродажаНаОсновании.Комментарий =
        "Документ введён на основании " + Строка(Поступление.Ссылка);
    ПродажаНаОсновании.Заполнить(Поступление.Ссылка);
    ПродажаНаОсновании.Записать(РежимЗаписиДокумента.Проведение);
 
    /// Как пометить на удаление документ в 1с 8.3, 8.2
 
    ПродажаНаОсновании.УстановитьПометкуУдаления(Истина);
    // метод Записать вызывать не нужно
 
КонецПроцедуры
 
/// Как найти и изменить программно движения документа
/// по регистрам в 1с 8.3, 8.2
 
&НаСервере
Процедура КакНайтиИИзменитьДвиженияДокументаНаСервере()
 
    // предположим у нас есть ссылка на проведенный
    // документ поступления еды № ВМБП-000002
 
    ПоступлениеСсылка = 
        Документы.ПоступлениеЕды.НайтиПоНомеру(
            "ВМБП-000002", '20141231');
 
    // мы знаем, что этот документ делает записи по
    // двум регистрам:
    // - регистр накопления "ЗапасЕды"
    // - регистр бухгалтерии "Хозрасчетный"
 
    // наша задача: найти записи по регистру "ЗапасЕды"
    // изменить их (например, удвоим количество)
    // и записать вместо старых
 
    // используем объектную технику получения движений,
    // ведь мы будем их изменять
 
    Поступление = ПоступлениеСсылка.ПолучитьОбъект();
 
    // получим набор записей этого документа в регистр ЗапасыЕды
    НаборЗаписей = Поступление.Движения.ЗапасыЕды;
 
    // прочитаем записи из базы данных
    НаборЗаписей.Прочитать();
 
    Для Каждого Запись Из НаборЗаписей Цикл
 
        // выведем старые значения
        Сообщить(
            Строка(Запись.ВидДвижения) + " " +
            Запись.Еда + " " + Запись.Количество
        );
 
        // изменим запись, удвоив количество
        Запись.Количество = Запись.Количество * 2;
 
    КонецЦикла;
 
    // добавим новую запись
    НоваяЗапись = НаборЗаписей.ДобавитьПриход();    
    НоваяЗапись.Склад = 
        Справочники.Склады.НайтиПоНаименованию("Основной");
    НоваяЗапись.Еда = 
        Справочники.Еда.НайтиПоНаименованию("Банан");
    НоваяЗапись.Количество = 3;
    НоваяЗапись.Период = ТекущаяДата();
 
    // разом запишем набор записей
    НаборЗаписей.Записать(
        Истина // удалим старые движения и запишем вместо них новые
    );
 
    // теперь движения документа № ВМБП-000002 отличаются от тех,
    // что были записаны документом при проведении
    // чтобы вернуть их к начальному виду - нужно
    // перепровести документ
 
КонецПроцедуры
 
/// Как прочитать движения документа по регистрам запросом
/// в 1с 8.3, 8.2
 
&НаСервере
Процедура КакПрочитатьДвиженияДокументаЗапросомНаСервере()
 
    // этот приём используется, если не требуется изменять
    // найденные записи    
 
    // предположим у нас есть ссылка на проведенный
    // документ поступления еды № ВМБП-000002
 
    ПоступлениеСсылка = 
        Документы.ПоступлениеЕды.НайтиПоНомеру(
            "ВМБП-000002", '20141231');
 
    // мы знаем, что этот документ делает записи по
    // двум регистрам:
    // - регистр накопления "ЗапасЕды"
    // - регистр бухгалтерии "Хозрасчетный"
 
    // прочитаем записи по регистру "ЗапасЕды" запросом
 
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |   ЗапасыЕды.НомерСтроки,
        |   ЗапасыЕды.ВидДвижения,
        |   ЗапасыЕды.Еда,
        |   ЗапасыЕды.Количество
        |ИЗ
        |   РегистрНакопления.ЗапасыЕды КАК ЗапасыЕды
        |ГДЕ
        |   ЗапасыЕды.Регистратор = &ВыбРегистратор
        |
        |УПОРЯДОЧИТЬ ПО
        |   ЗапасыЕды.НомерСтроки";
 
    Запрос.УстановитьПараметр("ВыбРегистратор", ПоступлениеСсылка);
 
    РезультатЗапроса = Запрос.Выполнить();
 
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
 
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Сообщить(
            "#" + ВыборкаДетальныеЗаписи.НомерСтроки +
            " " + ВыборкаДетальныеЗаписи.ВидДвижения +
            " " + ВыборкаДетальныеЗаписи.Еда + 
            " " + ВыборкаДетальныеЗаписи.Количество
        );
    КонецЦикла;
 
КонецПроцедуры
 
/// Как изменить проведенный документ, не меняя его
/// движений (проводок) в 1с 8.3, 8.2
 
&НаСервере
Процедура КакИзменитьПроведенныйДокументНеМеняяЕгоДвиженийНаСервере()
 
    // бывает так, что есть проведенный документ
    // в уже закрытом периоде и нужно изменить
    // некоторое поле документа, но так чтобы
    // не поменялись проводки документа
 
    ПоступлениеСсылка = 
        Документы.ПоступлениеЕды.НайтиПоНомеру(
            "ВМБП-000005", '20141231');
 
    // Изменим количество в табличной части этого документа
    // на 1, но чтобы проводки (движения) остались прежними
 
    Поступление = ПоступлениеСсылка.ПолучитьОбъект();
 
    Для Каждого Строка Из Поступление.Еда Цикл
        Строка.Количество = 1;
    КонецЦикла;
 
    // если сейчас просто записать документ
    // изменятся его проводки, ведь он уже проведён
 
    // но если установить флаг Загрузка
    Поступление.ОбменДанными.Загрузка = Истина;    
 
    // то можно записать проведенный документ
    // без повторного проведения
 
    Поступление.Записать();
 
КонецПроцедуры
 
&НаСервереБезКонтекста
Функция ПолучитьПродажуПоНомеру(Номер, Интервал)
 
    Возврат Документы.ПродажаЕды.НайтиПоНомеру(
        Номер, Интервал
    );
 
КонецФункции
 
/// Как открыть форму существующего документа 
/// по ссылке в 1с 8.3, 8.2
 
&НаКлиенте
Процедура КакОткрытьФормуСуществующегоДокумента(Команда)
 
    СсылкаНаДокумент = ПолучитьПродажуПоНомеру("ВМБП-000006", '20141231');
 
    ПараметрыФормы = Новый Структура("Ключ", СсылкаНаДокумент);
 
    ОткрытьФорму(
        "Документ.ПродажаЕды.ФормаОбъекта", // имя формы
        ПараметрыФормы // параметры для формы
    );
 
КонецПроцедуры
 
/// Как открыть форму выбора документа и
/// отследить её закрытие в 1с 8.3, 8.2
 
&НаКлиенте
Процедура КакОткрытьФормуВыбораДокумента(Команда)
 
    ОповещениеОЗакрытии = Новый ОписаниеОповещения("ПослеВыбораДокумента",
        ЭтотОбъект);
 
    ОткрытьФорму(
        "Документ.ПродажаЕды.ФормаВыбора",,,,,,ОповещениеОЗакрытии        
    );
 
КонецПроцедуры
 
&НаКлиенте
Процедура ПослеВыбораДокумента(Результат, Параметры) Экспорт
 
    Если Результат <> Неопределено Тогда
        Сообщить("Был выбран документ " + Результат);
    КонецЕсли;
 
КонецПроцедуры
 
&НаСервереБезКонтекста
Функция НайтиПоставщикаПоИмени(Имя)
 
    Возврат Справочники.Поставщики.НайтиПоНаименованию(
        Имя
    );
 
КонецФункции
 
/// Как открыть форму списка (журнал) документов и
/// с отбором по реквизиту в 1с 8.3, 8.2
 
&НаКлиенте
Процедура КакОткрытьФормуСпискаДокументовСОтбором(Команда)
 
    // откроем список поступлений, оставив
    // только те, что от поставщика ООО "Поле"
 
    ПараметрыОтбора = Новый Структура;
    ПараметрыОтбора.Вставить("Поставщик",
        НайтиПоставщикаПоИмени("ООО ""Поле"""));
 
    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("Отбор", ПараметрыОтбора);
 
    ОткрытьФорму(
        "Документ.ПоступлениеЕды.ФормаСписка",
        ПараметрыФормы
    );
 
КонецПроцедуры
 
/// Как открыть форму только что созданного, но ещё
/// не записанного документа в 1с 8.3, 8.2
 
&НаКлиенте
Процедура КакОткрытьФормуНовогоНеЗаписанногоДокумента(Команда)
 
    // получаем форму нового документа
    ФормаНовогоДокумента = ПолучитьФорму(
        "Документ.ПоступлениеЕды.ФормаОбъекта",,, Истина); 
 
    // делаем копию её данных (так как напрямую их менять
    // нельзя)
    КопияДанныхФормы = ФормаНовогоДокумента.Объект;
 
    // заполняем эти данные на сервере
    ЗаполнитьДанныеФормыНаСервере(КопияДанныхФормы);    
 
    // копируем заполненные данные в исходную форму
    КопироватьДанныеФормы(КопияДанныхФормы,
        ФормаНовогоДокумента.Объект);
 
    // показываем форму нового заполненного
    // документа пользователю
    ФормаНовогоДокумента.Открыть();
 
КонецПроцедуры
 
&НаСервере
Процедура ЗаполнитьДанныеФормыНаСервере(ДанныеФормы)
 
    // преобразуем данные формы в документ
    Поступление = ДанныеФормыВЗначение(ДанныеФормы,
        Тип("ДокументОбъект.ПоступлениеЕды"));
 
    // заполним только табличную часть
    НоваяСтрока = Поступление.Еда.Добавить();
    НоваяСтрока.Номенклатура =
        Справочники.Еда.НайтиПоНаименованию(
            "Банан"
        );
    НоваяСтрока.Количество = 10;
    НоваяСтрока.Сумма = 550;
 
    // преобразуем документа обратно в данные формы
    ЗначениеВДанныеФормы(Поступление, ДанныеФормы);
 
КонецПроцедуры
 
/// Скачать и выполнить эти примеры на компьютере
Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

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

Ниже рассмотрим способ как найти любые объекты в программах 1С 8.2 и 8.3.

Версия 1С:Предриятие 8.3:

1. Запускаем 1С.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

2. Выделяем нужную базу.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

3. Открываем базу 1С.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

4. Нажимаем главное Меню, дальше Все функции.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

5. В окне все функции видим все объекты, которые есть в программе:

  • константы;
  • справочники
  • документы;
  • журналы документов;
  • отчеты;
  • обработки;
  • планы видов характеристик;
  • планы счетов;
  • планы видов расчета;
  • регистры сведений;
  • регистры накопления;
  • регистры бухгалтерии;
  • и другие.
Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

6. Допустим нам нужен документ “Ввод остатков”. Нажимаем на плюс “+” рядом Документы, после чего раскрывается список документов. Прокручиваем вниз и находим нужный документ. Также название объекта можно набрать в клавиатуре на русском раскладке. Для справочников и других объектов, проделываем те же шаги.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

7. После открытия, работаем нужным документом. В нашем случае, это документ Ввод остатков”.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

Версия 1С:Предриятие 8.2

1. Запускаем 1С и выбираем нужную базу.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

2. Если есть пользователь, выбираем и нажимаем ОК.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

3. Нажимаем Операции. Ниже видим, что есть список объектов, в которых мы можем найти нужный нам объект. Допустим, мы хотим найти справочник “Статьи затрат”. Для этого нажимаем Операции – Справочники.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

4. В списке находим “Статьи затрат” и нажимаем ОК.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

5. Продолжаем работу открытым справочником.

Как найти любые документы, справочники и отчеты в базе 1С (8.3, 8.2)

Источник изображения.

Понравилась статья? Ставьте лайк и подписывайтесь на канал Советы бухгалтеру.

В группах Вконтакте, Одноклассники можете задавать ваши вопросы.

Добавить комментарий