1с признак копирования документа

Содержание
  1. Nav view search
  2. Navigation
  3. Search
  4. Программирование, доработки консультации по 1С
  5. Как мы работаем
  6. Стоимость работ
  7. Техническая поддержка
  8. Программы для управления вашим бизнесом.
  9. Предоставление сервера.
  10. SMS из вашей 1С
  11. УФ: программное создание и копирование документов с использованием конструкций ДанныеФормыВЗначение, ЗначениеВДанныеФормы
  12. Групповое копирование документов из периода в период
  13. Причины купить
  14. Достоинства
  15. Гарантия возврата денег
  16. Скачать файлы
  17. Специальные предложения
  18. См. также
  19. UniPrice: Загрузка прайс-листов из Excel, YandexML, CSV, TXT, MMO, DBF, MXL, CommerceML (импорт товаров, цен, остатков, характеристик, групп номенклатуры, свойств, изображений и др.) Промо
  20. Формирование счета-фактуры на основании нескольких документов
  21. Нумерация счетов-фактур и документов реализации по дате создания
  22. Автоматическое формирование документов актов сверки для множества контрагентов в 1С: Бухгалтерия предприятия (обновление до версии 1.1)
  23. Быстрое создание номенклатуры по штрих-коду и документов поступления для 1С: Розница 2 и ШТРИХ_М «Розничная торговля» по данным сайта www.barcode-list.ru Промо
  24. Замена материалов на Аналоги в производстве для Бухгалтерии 3, Комплексная автоматизация 2
  25. Связанные документы или Структура подчиненности (КА 2.4, ERP 2, УТ 11)
  26. Рассылка по электронной почте и автоматическое формирование актов сверки взаиморасчетов для КА 2.4, УТ 11
  27. Загрузка поступлений (накладных) из Excel в 1С: Розница 2 и Управление торговлей 11 Промо
  28. Загрузка чеков от самозанятых. Создание поступлений автоматически
  29. Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)
  30. Групповое создание актов сверок
  31. Загрузка в 1С:Бухгалтерию 3.0 данных из ОФД о денежных поступлениях (чеках) Промо
  32. Автоматический ввод документов в «1С:Управление торговлей 11» (Заказ, Акт или Реализация, Счет-фактура при необходимости)
  33. Обработка создания документов «Реализация товаров и услуг» и «Счета покупателей» для группы контрагентов
  34. Загрузчик из личного кабинета «Такском-касса» по API 1.3 в «1С:Бухгалтерию предприятия 3.0»
  35. PowerTools Промо
  36. Загрузка поступлений в формате Excel, ОпенОфис, LibreOffice для Бухгалтерии 3.0
  37. Автомат реализаций с графиком начислений и контролем оплаты счетов
  38. 1с признак копирования документа

Программирование, доработки консультации по 1С

Как мы работаем

3. Мы выполняем работу.

4. Вы принимаете работу в вашей программе, если есть недочеты мы их исправляем.

5. Мы выставляем счет, вы оплачиваете.

Стоимость работ

1. Все работы делятся на 3 категории: консультация, обновление типовой конфигурации, разработка или программирование нового отчета, обработки, кнопки и т.п.

2. Стоимость работ по категориям:

Услуга Цена Минимальный объем работ
Консультации 900 р/час 1 час, далее по 20 мин.
Обновления 1100 р/час 1 база
Программирование 1400 р/час 1 час, далее по 20 мин.

3. На работы более 10 часов предварительно составляется техническое задание с описанием и стоимостью работ. Работы начинаются после согласования ТЗ с вами.

Техническая поддержка

1. Если вы обнаруживаете какие то ошибки, в ранее принятых работах, в течении 3х месяцев, мы исправляем их бесплатно.

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

Программы для управления вашим бизнесом.

1С:Предприятие

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

Предоставление сервера.

Моментальная настройка сервер + 1С.

SMS из вашей 1С

Хотите чтобы клиенты во время узнавали об акциях, скидках? Клиенты не возвращаются? Настройте отправку SMS прямо из 1С!

Наша компания сможет в короткие сроки настроить отправку SMS Вашим клиентам напрямую из 1С. Примеры событий которые можно автоматизировать:

Настройку в 1С можно произвести силами наших специалистов или своих сотрудников. Ознакомится с тарифами можно на странице SMS-тарифов.

Источник

УФ: программное создание и копирование документов с использованием конструкций ДанныеФормыВЗначение, ЗначениеВДанныеФормы

Т.к. часто возникают вопросы по программному созданию/копированию/обработке объектов 1С:Предприятие в режиме «Управляемые формы», то решил скомпоновать в данной публикации примеры решения таких задач, с комментариями по каждому действию. Поначалу кажется все достаточно запутанно, но если по шагам все разложить и немного вникнуть, то всё должно встать на свои места.

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

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

ПРИМЕРЫ:

Ниже я приведу пример как создавать/копировать/изменять документы. Данный пример досконально разобран и позволит понять клиент-серверную архитектуру работы и распространить эти знания на другие объекты 1С (справочники, отчеты. ).

Задача была такая: есть справочник номенклатуры, в которые заведены блюда (общепит). Каждое блюдо имеет свою калькуляцию (состав продуктов). Калькуляции хранятся в периодическом регистре сведений. В форме элемента размещен динамический список с калькуляциями, принадлежащими открытому блюду (это могла быть любая другая таблица данных). Необходимо было добавить две кнопки «Создать калькуляцию» (новую) и «Скопировать калькуляцию» (активную из списка).

Для этого я создал соответствующие команды и разместил их на форме.

1. «Создать калькуляцию».

В данном варианте все просто: мы создаем на клиенте процедуру и все действия выполняем прямо на клиенте, т.к. ничего требующего вызова сервера не делаем. Создаем/получаем форму объекта, передаем в переменную ДанныеФормы Объект формы, выполняем элементарные действия с ДанныеФормы и открываем уже заполненную форму.

2. «Скопировать калькуляцию».

С данной операцией уже немного сложнее, часть процедур выполняется на клиенте, а часть на сервере.

Порядок действий таков: Мы на клиенте создаем форму нужного нам объекта и сразу открываем её (ОткрытьФорму. ). Далее как и ранее мы передаем в переменную ДанныеФормы Объект открытой формы.

Т.к. задача состоит в том чтобы скопировать уже существующий в базе документ (старую калькуляцию, которую выбрал пользователь в динамическом списке), то действия с данными ДБ можно производить только на сервере. Таким образом, мы получаем необходимые параметры из формы номенклатуры (в моем случае старую калькуляцию) и передаем через Структуру эти параметры в серверную процедуру без контекста вместе с переменной ДанныеФормы: СкопироватьОбъектДокументаНаСервере(ДанныеФормы, СтруктураДанных).

Уже на сервере мы с помощью функции ДанныеФормыВЗначение() преобразуем ДанныеФормы в привычный нам из «обычных форм» объект документа и работаем с ним с использованием серверных процедур. Копируем данные из другого документа, запускаем экспортные процедуры из модуля объекта, дозаполняем прочие реквизиты.

Функция ДанныеФормыВЗначение() требует указания соответствия (типа получаемого объекта): Тип(«ДокументОбъект.Калькуляция»).

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

Думаю, начинающим познавать клиент-серверную архитектуру 1С пригодится данная статья )

Источник

Групповое копирование документов из периода в период

За основу периода в обработке был взят 1 месяц.

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

Обработка тестировалась на конфигурациях БП 3.0 базовая, БП 3.0, БП 3.0 КОРП.

Для полноценного функционирования обработки пользователю необходимо иметь 1С Предприятие 8.3.6 и релиз 1С Бухгалтерия 3.0 не ниже 3.0.40.33.

Обработка поставляется с открытым исходным кодом. Возможна самостоятельная доработка.

Техническая поддержка осуществляется бесплатно в течение 1 месяца со дня приобретения.

Ограничений по лицензии нет.

Выложена новая версия 2.2.

В новой версии добавлено:

1. Обработка заменяет в реквизитах документа <Комментарий, Содержание>название месяца начального на месяц конечный. Формат: именительный падеж, форма записи пример

Выложена новая версия 2.3.

В новой версии добавлено:

1. При копировании документов теперь можно указать не только конкретного контрагента, но и группу контрагентов.

Выложена новая версия 2.4.

В новой версии добавлено:

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

Причины купить

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

Обработка поставляются для платформы 8.3 с открытым кодом. При необходимости возможно самостоятельное редактирование.

Достоинства

Знчительное сокращение времени формирования повторяющегося массива документов. Максимальная простота использования. Высокая наглядность интерфейса.

Гарантия возврата денег

ООО «Инфостарт» гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.

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

Для возврата оплаты просто свяжитесь с нами.

Скачать файлы

Специальные предложения

Москва: 8 (495) 668-08-22

(с 08:00 до 21:00 МСК)

Читайте также:  Налог как правовая категория понятие характерные признаки и функции

Обновление 18.02.21 10:49

См. также

UniPrice: Загрузка прайс-листов из Excel, YandexML, CSV, TXT, MMO, DBF, MXL, CommerceML (импорт товаров, цен, остатков, характеристик, групп номенклатуры, свойств, изображений и др.) Промо

Если у Вас есть интернет-магазин и он синхронизирован c 1С:Предприятие, то наше предложение для Вас.
Если Вы ведете интернет-торговлю закупая товар у поставщиков, то наше предложение для Вас.
Если Вы хотите анализировать сотни прайс-листов конкурентов и таким образом строить свою ценовую политику, то наше предложение для Вас.
Если Вы тратите много времени = денег на обработку прайс-листов, то наше предложение для Вас.

Мы хорошо поработали на протяжении года, вложили опыт и знания 10 лет работы в сфере e-commerce и баз данных 1С:Предприятие, организовали инфраструктуру и поддержку проекту. И вот наконец, рады сообщить, что готовы представить Вашему вниманию новый мощнейший универсальный модуль для обработки прайс-листов UniPrice, который будет делать всю работу с прайс-листами за Вас автоматически по расписанию.
Уверены, что UniPrice даст неоспоримое конкурентное преимущество Вашему бизнесу.

20.03.2017 72234 386 211

Формирование счета-фактуры на основании нескольких документов

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

Нумерация счетов-фактур и документов реализации по дате создания

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

Автоматическое формирование документов актов сверки для множества контрагентов в 1С: Бухгалтерия предприятия (обновление до версии 1.1)

Если у вас больше 5 контрагентов формирование актов сверки с контрагентом в 1С: Бухгалтерия предприятия трудоемкий процесс, который отнимает много времени. В типовой конфигурации 1С нельзя сформировать акт сверки по нескольким контрагентам одновременно. Приходится формировать акт сверки по каждому контрагенту отдельно. Это решение добавляет функцию формировать акты сверки в 1С по группе контрагентов одновременно. Контрагенты группируются по папкам, затем для этой группы контрагентов формируются акты сверки.

Быстрое создание номенклатуры по штрих-коду и документов поступления для 1С: Розница 2 и ШТРИХ_М «Розничная торговля» по данным сайта www.barcode-list.ru Промо

Очень быстро создаем номенклатуру и документы поступления/оприходования в рознице 2.2. Номенклатура создается по штрихкодам, по данным сайта barcode-list.ru.

09.06.2018 29037 71 24

Замена материалов на Аналоги в производстве для Бухгалтерии 3, Комплексная автоматизация 2

Связанные документы или Структура подчиненности (КА 2.4, ERP 2, УТ 11)

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

Рассылка по электронной почте и автоматическое формирование актов сверки взаиморасчетов для КА 2.4, УТ 11

Расширение для автоматического формирования актов сверки по контрагентам, а также массовой рассылки печатной формы пользователям на e-mail.

Загрузка поступлений (накладных) из Excel в 1С: Розница 2 и Управление торговлей 11 Промо

Эта обработка загружает накладные с товарами из Excel в документ «Поступление товаров». Есть две версии программы: для 1С Розница 2.3 и 1С Управление торговлей 11.4

15.11.2016 77941 184 186

Загрузка чеков от самозанятых. Создание поступлений автоматически

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

28.05.2020 6905 10 30

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

Групповое создание актов сверок

Обработки предназначены для массового создания актов сверки и отправки их по электронной почте для конфигураций Управление торговлей 10.3. и Бухгалтерия предприятия 3.0. Для Бухгалтерии 3.0 Разработка велась на 1С:Предприятие 8.3 (8.3.15.1830). проверялась на Бухгалтерия предприятия 3.0 (3.0.71.83) и 3.0.76.77 Для Управление торговлей 10.3 Разработка велась на 1С:Предприятие 8.3 релиз конфигурации (10.3.61.2)

24.04.2020 8456 20 7

Загрузка в 1С:Бухгалтерию 3.0 данных из ОФД о денежных поступлениях (чеках) Промо

Согласно 54-ФЗ теперь по правилам ведения кассовых операций необходимо, оформлять приходные кассовые ордера (ПКО) и расходные кассовые ордера (РКО) на основании фискальных документов (чеков ККМ). Как известно все данные о чеках ККМ, за любой период, можно посмотреть на сайте оператора фискальных данных (ОФД). Что бы избежать оформления вручную ПКО и РКО, а так же эквайринговых операций, предлагаем универсальную обработку, которая создаст за вас документы ПКО, РКО, ОперацииПоПлатежнойКарте или Отчет о розничных продажах, на основании данных с сайта ОФД.

09.08.2017 74814 472 191

Автоматический ввод документов в «1С:Управление торговлей 11» (Заказ, Акт или Реализация, Счет-фактура при необходимости)

Автоматическое массовое создание заказов и актов(реализаций) в «1С:Управление торговлей 11» уменьшает затраты времени на ввод однотипных документов для Ваших контрагентов. Если у Вас список клиентов, которым Вы ежемесячно выставляете закрывающие документы (счет, акт, счет-фактура), то с помощью данного решения Вы сократите время работы во много раз. Обработка для группового создания актов в «1С:Управоение торговлей ред.11» автоматизирует процесс составляения документов и экономит Ваше ценное время.

Обработка создания документов «Реализация товаров и услуг» и «Счета покупателей» для группы контрагентов

Обработка формирует документы реализации товаров и счет на оплату покупателю по заданному списку контрагентов Обработка совместима с платформой 1С 8.3 и конфигурацией «Бухгалтерия предприятия редакций» 3.0. (релизы 3.0.64.21-3.0.64.54).

Загрузчик из личного кабинета «Такском-касса» по API 1.3 в «1С:Бухгалтерию предприятия 3.0»

Расширение для загрузки информации о кассовых сменах из личного кабинета «Такском-касса». Автозагрузка: смены, чеки, проданная номенклатура. Автоматическое создание документов «Отчет о розничных продажах», «Поступление наличных», «Операция по платежной карте».

17.03.2020 10143 21 21

PowerTools Промо

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

14.01.2013 120760 590 0

Загрузка поступлений в формате Excel, ОпенОфис, LibreOffice для Бухгалтерии 3.0

Автомат реализаций с графиком начислений и контролем оплаты счетов

Автомат документов реализации (Обработка. Внешнее расширение. НОВЫЙ Релиз 1.0.1.5) предназначен для массовой генерации и печати документов реализации (счета, акт, с/ф, упд) по договорам контрагентов в 1С:Бухгалтерии 3.0 (ТАКСИ). В случае УСН выписываются счета, акты и упд. Обработка используется если организация предоставляет регулярные услуги и выставляет фиксированные суммы за каждый месяц. Например, это могут быть договора аренды, договора на абонентское обслуживание. Автоматически учитываются особенности учетной политики предприятия и ставки НДС. Код обработки полностью открыт. Возможна доработка. Оперативная реакции на Ваши сообщения и вопросы гарантируется. Скриншоты для установки прилагаются. Количество установок не ограничено. В новом релизе разнесены формы списка формирования документов начисления и формы печати документов. Плюс отдельные списки документов с месячной и квартальной периодичностью. Добавлен видеоролик. Добавлена возможность рассылки документов по e-mail.

Источник

1с признак копирования документа

Рассылка
Курс лекций
Статьи
Программы
Ссылки

Назначение документов
Основы программирования
Экранные формы
Создание и проведение
Номер и нумераторы
Дата, время и позиция
Точка актуальности
Последовательности

Назначение документов

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

В процессе конфигурирования настраивается произвольное количество видов документов. Типичными примерами видов документов являются такие документы, как «Платежное поручение», «Счет», «Приходная накладная», «Расходная накладная», «Накладная на внутреннее перемещение», «Приходный кассовый ордер» и так далее. Каждый вид документа предназначен для отражения своего типа событий. Это определяет его структуру и свойства, которые описываются в конфигурации.

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

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

Некоторые документы могут проводиться. С точки зрения пользователя, «провести» документ означает «пустить его в дело». С точки зрения программиста, при проведении документа сработает модуль проведения документа (процедура ОбработкаПроведения). Именно там определяются все действия, выполняемые при проведении документа. Например, при проведении документа «Приказ о приеме на работу» сработает модуль этого документа, который в справочник Сотрудники добавит нового сотрудника.

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

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

При разработке документов в Конфигураторе может быть создано необходимое количество общих реквизитов документов. Такие реквизиты, будучи созданными один раз, становятся доступными для всех документов: общие реквизиты можно размещать в формах документов, к значениям общих реквизитов можно обращаться из встроенного языка системы 1С:Предприятие. Работая с системой 1С:Предприятие, пользователь может выполнять отбор документов в журналах по значениям общих реквизитов документов

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

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

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

Журналы в системе 1С могут быть трех видов: Обычный, Общий и Дополнительный. Обычный журнал предназначен для хранения документов определенных видов. Документ также может быть включен в дополнительный журнал, при этом документ будет зарегистрирован сразу в двух журналах. Дополнительных журналов может быть несколько. Общий журнал показывает документы всех видов.

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

Сравнение документов с другими объектами

Константы хранят значения, сохраняются в базе данных Документ хранит не одно значение, а событие хозяйственной деятельности предприятия, кроме того событие порождает изменение состояния данных. Документ обязательно имеет дату и время, может содержать табличную часть, хранит множество данных различных типов, которые могут быть связаны с данными других объектов. Константы не имеют печатной формы.
Справочники сохраняется в базе данных, имеет реквизиты, справочники могут быть подчиненными друг другу Могут иметь печатные формы Справочник хранит нормативно-справочную информацию, а документы отражают события реального мира. Обычно значения реквизитов документов выбираются из справочников. Документ обычно проводится, имеет дату и время. Справочники, в отличие от документов могут быть многоуровневыми, иметь периодические (привязанные к дате) реквизиты.
Перечисления хранится в БД, хранит список значений Перечисление может хранить только список значений, который задается разработчиком в режиме Конфигуратор. Не имеют печатной формы. Не редактируются пользователем.
Таблица значений имеет строки и колонки (не хранится в БД) ТаблицаЗначений предназначена для временного хранения промежуточных данных в памяти компьютера, возникающих во время работы программы, и удаляется, когда работа с ней закончена. Документ записывает все данные в БД. Таблицы значений не могут быть подчиненными друг другу. Не имеют печатной формы.
Список значений хранит список значений (не сохраняется в БД) Представляет собой временный набор данных, так же как и таблица значений. Не имеют печатной формы.
Отчеты Имеет печатные формы Отчет обычно считывает данные, хранящиеся в БД и формируются печатные формы для вывода данных в нужном виде на экран или на принтер.

Основы программирования

Ссылка на документ
Для работы с документом из какого-нибудь модуля требуется сначала создать ссылку на этот документ.

ДокПрием = СоздатьОбъект («Документ.ПриемНаРаботу»);
ДокУвольн = СоздатьОбъект («Документ.ПриказОбУвольнении»);

Создание, сохранение и проведение документа

ДокПрием. Новый ();
ДокПрием.ФИО = «Иванов Иван Иванович»;
ДокПрием.Оклад = 5000;
ДокПрием. Записать ();

//программное проведение документа
ДокПрием. Провести ();

ДокПрием. НайтиДокумент (Док);
ДокПрием. НайтиПоНомеру (123)

Табличная часть документа
Перебор строк, добавление и удаление строк табличной части документа..

//добавление строки
Док. НоваяСтрока ();
Док.РеквизитТаблЧасти = Значение;

//удаление строки
Док. УдалитьСтроку ();

Экранные формы

Форма журнала документов

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

В журнале документов можно установить интервал. Тогда он будет показывать только те документы, у которых дата попадает в этот интервал. Для установки интервала предусмотрена специальная кнопка на панели инструментов журнала. Кроме того, интервал можно установить программно методом УстановитьИнтервал

Графы журнала
В конфигураторе можно настраивать графы журнала (колонки). Например, в приведенной выше форме графа Сотрудник отображает ФИО сотрудника, для которого был сделан документ

Отбор, закладки отбора

В журнале документов можно программно или вручную установить отбор, тогда журнал будет показывать только нужные пользователю документы. Для установки отбора вручную предназначена специальная кнопка на панели инструментов журнала. Отбор можно установить по общим графам документов, а также по виду документов. Нельзя установить отбор по двум критериям одновременно. Отбор возможен только в ОБЩИХ журналах! Для упрощения процедуры отбора могут быть использованы закладки. Для этого используется метод ЗакладкиОтбора.

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

ПриУстановкеОтбора() Срабатывает при установке отбора кнопкой на панели инструментов или выбором закладки отбора. Здесь можно проверить права доступа или сделать что-нибудь еще.
ПриУстановкеИнтервала() Предопределенная процедура при установке интервала журнала.
ПриВыбореСтроки(ФлагОбработки) Срабатывает при двойном щелчке на документе или при нажатии ENTER. Режим обработки выбора строки предопределенной процедурой ПриВыбореСтроки включается при помощи метода Форма.ОбработкаВыбораСтроки(1).
Читайте также:  Понятие и признаки государственной дисциплины

Сортировка
ВНИМАНИЕ. Сортировка в журнале документов по произвольной графе невозможна!

Поиск документа в журнале
Кнопка «Поиск по номеру» (см. панель инструментов формы журнала документов) + набор первых символов.

Для пользователя содержимое документа представляется в экранной форме документа:

Для обслуживания работы действий с документами в системе 1С имеется большое количество предопределенных процедур. Однако, прежде чем приступить к описанию последних, сделаю важное пояснение. Документ как объект конфигурации содержит ДВА РАЗНЫХ программных модуля.

1. Один их них (Модуль документа) запускается при интерактивном или программном выполнении некоторых важных действий: проведение, отмена проведения, удалении проведенного документа, архивации записей журнала расчетов, порожденных документом. Фактически вышеприведенные действия сопоставляются с соответствующими предопределенными процедурами модуля документа. Операторам модуля доступны все реквизиты документа, но не доступны реквизиты экранной формы документа.

Предопределенные процедуры, принадлежащие модулю документа:

ОбработкаПроведения(Знач) Обработка проведения. В теле описываются подготовка данных реквизитов документа, бухгалтерских итогов к формированию операции, а также свойства этой операции (Корреспондирующие счета, Субконто и т.п.). Здесь же описываются движения регистров оперативного учета, если документ в них участвует. Выполнение проведения система самостоятельно заключает в транзакцию, поэтому не употребляйте операторов, ожидающих отклика пользователя и, вообще, постарайтесь минимизировать подготовку проведения, передав, по возможности, часть этой работы в модуль формы. В переменную Знач передается значение, указанное в методе Провести() при его работе. Параметр не обязательный. ОбработкаУдаления Проведения()

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

Если ВыбратьСтроки() = 1 Тогда // Обратите внимание

*** Пример доступности контекста документа в модуле документа

АрхивироватьДокумент() Вызывается при смене расчетного периода журнала расчетов «вперед». Требуется описывать, если документ порождает записи журнала расчетов.

2. Модуль формы запускается при каждом открытии формы документа. В его контексте доступны все реквизиты документа и реквизиты формы. Кроме предопределенных процедур модуля формы, там можно разместить вспомогательные процедуры и функции, вызываемые, например, экранными кнопками. Не путайте: предопределенные процедуры модуля документа нельзя размещать в модуле формы, и наоборот!

Если ИмяПользователя() <> «Бухгалтер» Тогда

Предупреждение(«Вам не позволено создавать этот документ!»);

СтатусВозврата(0); Возврат; //Новый документ не будет создан

Если Копирование = 1 Тогда

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

Читайте также:  Признаки умеренного континентального климата

СуммаДоплаты=Основание.СуммаСверху; //Свой реквизит принимает значение реквизита документа-основания.

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

ПриЗаписи() Выполняется при записи (перезаписи) документа. Имейте ввиду, что операторы этой процедуры выполняются ДО фактической записи документа в базу. Это, так сказать, подготовительная работа. ПриВводеСтроки()

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

Процедура ПриВводеСтроки()
. СтатусВозврата(0);
КонецПроцедуры

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

Печатные формы документа

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

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

Маленькая хитрость: если вы создали свою печатную форму для какого-либо документа, или «заточили» типовую, рекомендую сохранить её в отдельном файле печатной формы (*.mxl) тогда при переходе с релиза на релиз вам не будет нужды переделывать таблицы документа, достаточно будет в операторе ИсходнаяТаблица() процедуры печати вставить ссылку на внешний файл.

Создание и проведение документа

1. Вариант первый. Пользователь выбирает Пункт меню Документы и в подменю щелкает по названию необходимого документа. Что происходит дальше. Документу присваивается номер, устанавливаются дата, начинается обработка операторов предопределеннной процедуры модуля формы документа ВводНового(), после чего открывается экранная форма с вызовом процедуры ПриОткрытии(). Новый документ создается в памяти, а для того, чтобы он был записан в базу, необходимо нажать кнопку Записать.

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

3. При третьем варианте новый документ создается на основании существующего документа другого вида. В такой ситуации вместо процедуры ВводНового() будет вызвана процедура ВводНаОсновании(). В ней нужно описать, какие реквизиты нового документа будут заполнены значениями из документа-основания. Естественно, что заполняемые реквизиты нового документа должны иметь тот же тип, что и соответствующие реквизиты-источники. Пример заполнения расходной накладной на основании счета:

РасчетныйСчет = ДокОсн.РасчетныйСчет;
МестоХранения = глЗначениеПоУмолчанию(«ОсновнойСклад»);
Контрагент = ДокОсн.Контрагент;
Договор = ДокОсн.Договор;
ВариантРасчетаНалогов = ДокОсн.ВариантРасчетаНалогов;

ДокОсн.ВыбратьСтроки();
Пока ДокОсн.ПолучитьСтроку() = 1 Цикл

НоваяСтрока();
Товар = ДокОсн.Товар;
Количество = ДокОсн.Количество;
Цена = ДокОсн.Цена;
Сумма = ДокОсн.Сумма;
НДС = ДокОсн.НДС;
Всего = ДокОсн.Всего;

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

СФ = СоздатьОбъект(«Документ.СчетФактура»);
СФ.Новый();
СФ.ВариантОтправки = 1;
СФ.НомерДок = НомерДок; // Счет-фактура будет с тем же номером и датой, что и
СФ.ДатаДок = ДатаДок; // накладная. Но так можно и не делать, есть же автонумерация
СФ.Контрагент=Контрагент;
СФ.Грузополучатель=Контрагент;

ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл

СФ.НоваяСтрока();
// Реквизит «Товар» док-та СчетФактура имеет неопределенный тип
СФ.НазначитьТип(«Товар», «Справочник.Номенклатура»);
СФ.Товар=Товар;
Если ПустоеЗначение(Товар.СтранаПроисхождения) = 0 Тогда

// а это обращение к реквизитам справочника «Номенклатура»
СФ.СтранаПроисхождения = Товар.СтранаПроисхождения;

СФ.Количество=Количество;
СФ.Цена=Цена;
СФ.Сумма=Сумма;
СФ.НДС=НДС;
СФ.Всего=Сумма+НДС;

// Здесь накладная становится основанием счета-фактуры через специальный реквизит
СФ.ДокументОснование = ТекущийДокумент();

КонецЦикла;
СФ.Записать();
СФ.Провести(0, «Программно»);

Обратите внимание, что сначала создается документ как объект, а затем вводится новый документ. Последующие действия похожи на действия при вводе на основании. Не забудьте, если вы создаете или изменяете документ программно, его необходимо записывать. И пожалуйста, не пытайтесь использовать метод Провести() в теле предопределенной процедуры ОбработкаПроведения() модуля документа!

Если вы работаете с уже существующим документом, то метод Провести() перепроведет документ. А с помощью метода Проведен() можно узнать, проведен ли какой-либо документ:

Если Док.Проведен() > 0 Тогда

Сообщить( «Документ № » + Док.НомерДок + » проведен»);
…………… // Какие-то действия, которые нужно сделать с проведенным документом

О создании операций и проводок при проведении документов читай раздел Операции и проводки главы Бухгалтерия.

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

СписаниеМатериалов = СоздатьОбъект(«Документ.ТребованиеНакладаная»);
НачатьТранзакцию();
Для Ном = 1 По 100 Цикл

СписаниеМатериалов.Новый();
…………………
// Заполнение реквизитов
СписаниеМатериалов.Записать();
СписаниеМатериалов.Провести();

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

Установка периодического реквизита справочника при проведении документа

Простым примером такого действия является установка нового оклада сотруднику в справочнике Сотрудники при проведении, например, штатного расписания.

УстановитьРеквизитСправочника (Сотрудник, «Оклад», НовыйОклад, ДатаДок);

Номер документа и нумераторы

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

Док = СоздатьОбъект(«Документ.Счет»);
Док.Новый();
Сообщить(«Документу был автоматически присвоен № » + Док.НомерДок);
Док.НомерДок = «000013»;
Сообщить(«Установлен новый № » + «000013»);

Док = СоздатьОбъект(«Документ.Счет»);
ПрефДок = Лев(ИмяПользователя(),2);
Док.ПрефиксНомера(ПрефДок + «-«);
Док.Новый();

Этот метод изменяет префикс по умолчанию, или возвращает текущее значение префикса, если использовать метод без параметра. А вот другая возможность:

Док = СоздатьОбъект(«Документ.Счет»);
ПрефДок = Лев(ИмяПользователя(),2);
Док.Новый();
Док.УстановитьНовыйНомер(ПрефДок + «-«); // такая нумерация работает очень корректно

В отличие от предыдущего этот метод устанавливает (а точнее переустанавливает введенный по умолчанию при исполнении метода Новый()) новый номер с указанным префиксом.

Что такое нумератор?

Периодичность. Этот реквизит устанавливает 2 важные характеристики нумератора: пределы контроля уникальности номеров документов и период повторяемости номеров. Если включен признак контроля уникальности номеров (см. ниже), «Периодичность» устанавливает, в каких пределах осуществлять этот контроль. Например, если установлено «В пределах дня», то уникальность номеров документов будет контролироваться в пределах суток: на следующие сутки номера документов могут повторяться. При включенной автоматической нумерации система будет присваивать очередной порядковый номер каждому новому документу. После завершения периода, установленного в реквизите «Периодичность», нумерация документов начнется с 1.

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

Контроль уникальности. Если эта опция включена, то при вводе нового документа его номер проверяется на уникальность в пределах, установленных в реквизите «Периодичность».

Дата, время и позиция документа

Док = СоздатьОбъект(«Документ.РасходнаяНакладная»);
Док.Новый();
Если Док.ДатаДок = ‘01.01.02’ Тогда
. Сообщить(«С Новым Годом!»);
КонецЕсли;

Кроме даты, позиция документа обозначается временем. С ним можно поступать так:

Часы = 0;
Минуты = 0;
Секунды = 0;
Док.ПолучитьВремя(Часы, Минуты, Секунды); // Прочтем время
Если Часы > 21 Тогда

Предупреждение(«Хватит работать по ночам!
|Документ будет помещен в конец дня»);
Док.АвтоВремяКонецДня(); // документ запишется на 10 сек позже последнего

Предупреждение(«Никто не оценит!
|Документ будет записан в начало дня»);
Док.АвтоВремяНачалоДня();// документ запишется на 10 сек раньше первого

ИначеЕсли Вопрос(«Записать документ с текущим временем?», 4) = 7 Тогда // ответ «Нет»

ВвестиЧисло(ЧасУст, «Укажите час, с которым будет записан данный документ»,2,0);
Док.УстановитьВремя(ЧасУст, Минуты, Секунды); // запишется с этим временем

Док.АвтоВремяТекущее(); // документ запишется с текущим временем

В крупных многопользовательских системах часто возникает ситуации, когда новые документы записываются почти одновременно, внутри одной секунды. Но все равно не возникает никаких накладок, т.к. документы разделяются внутри секунды с помощью позиции документа. Она представляет собой специальное 32-х символьное выражение, которое можно прочитать с помощью специального метода:

Позиция имеется только у записанного документа.

Точка актуальности (ТА)

Программное управление ТА

Последовательности

Методы последовательностей записываются через точку после полного имени последовательности:

Программные методы последовательностей

// получим границу последовательности
ПозицияНач = СформироватьПозициюДокумента (Последовательность.ОсновнаяПоследовательность.ПолучитьПозицию(), 1);
Док = СоздатьОбъект(«Документ»);

// отберем док-ты посл-ти «ОсновнаяПоследовательность»
Док.ВыбратьПоПоследовательности(ПозицияНач, ПолучитьПозициюТА(), «ОсновнаяПоследовательность»);
Пока Док.ПолучитьДокумент() = 1 Цикл

Док.Провести(); // перепроводим документы
Сообщить(«Восстановление последовательности «+Док);

Источник