Как подготовиться к экзамену 1с специалист по платформе

Время на прочтение
14 мин

Количество просмотров 47K

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

Эпиграф:

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

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

Придумаю свой язык программирования и назову его Pomidor.
Буду Senior Pomidor Developer.

©www.anekdot.ru
Все еще жду, когда мне в жизни пригодятся дециметры …
©www.anekdot.ru

Лирическое отступление:

Позволю себе в первых строках повествования выразить свое отношение к экзамену. Как многим известно, с этого года Фирма 1С ввела сертификацию 1С:Junior. То есть экзамен 1С: Специалист, как бы намекает на 1С:Senior. На мой взгляд, это далеко не так(есть конечно вариант, что 1С: Специалист это Middle, но тогда вопрос с сеньорами остается открытым,1С Эксперт это сейчас вообще элита, и встретить их в живой природе крайне трудно).


По нынешним временам, самым востребованным направлением не только в 1С, является интеграция систем. Поэтому (отличная идея для стартапа) напрашивается курс и экзамен 1С: Интегратор, с конвертацией данных, сайтами, xml, soap и прочим. В принципе, набор знаний для него понятен, можно сделать даже вопросы и каркасную конфигурацию для практической работы. 1С: Специалист + 1С: Интегратор = 1С:Senior на мой взгляд. Но сейчас мы имеем, то что имеем и 90% вакансий на hh.ru намекают на желание приобрести в штат именно 1С: Специалиста. Тут наши мнения совпадают. Потому что, опять же на мой взгляд, экзамен 1С: Специалист это подтверждение ваших навыков решать поставленные задачи в срок и с приемлемым качеством, на языке 1С. В данном случае вам ставится именно такая задача. Потом, в живой природе бизнес-процессы и их реализация могут встретиться раз в пять лет. (А за отчет на реквизитах регистров, вместо данных документов вообще могут побить, если для этого вы типовую конфигурацию снимете с поддержки). Компании выставляющие в требованиях 1С: Специалист, если они не франчайзи, покупают на рынке труда именно это — вашу способность решать в 1С поставленные задачи. Кроме того, экзамен освежает ваши знания, поэтому когда появляется время, сертификацию лучше проходить.

Гарантии и отказ от них:

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

Лирическое отступление:

Всем известна фраза: Хорошо или быстро? Статей о прохождении экзамена наверное немногим меньше, чем самих сдающих и в некотором количестве из них встречается: сдал за 3 часа, последний час не знал, чем заняться и тому подобные вещи. Я так не думаю. Если аккуратно реализовывать полученное техническое задание, а экзамен им и является, то времени будет в обрез. В принципе язык 1С не располагает к быстрой разработке, язык 1С располагает скорее к аккуратности. Известная аксиома: Чем мощнее язык, тем проще на нем написать плохой код. Это на Perl можно:

perl -wlne'/title>([^<]+)/i&&rename$ARGV,"$1.html"' *

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

ниф=наф.к*нюф.ко/нах(объект.ценру); //себестоимость

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

Постановка  задачи:

1. Вам нужно сдать экзамен.
2. Для этого нужно уложиться в отведенные 5 часов.
3. У вас есть необходимый багаж знаний.

Подготовка:

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

  • Сборник задач для подготовки к экзамену «1С: Специалист» по платформе «1С: Предприятие 8.3»
  • Профессиональная разработка в системе 1С: Предприятие 8
  • 1С: Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы
  • Разработка управляемого интерфейса
  • 1С: Предприятии 8.2. Система компоновки данных
  • 101 совет начинающим разработчикам в системе 1С: Предприятие 8

Курсы и обучающее видео:

Крайне не рекомендую использовать курсы сторонних (а иногда и потусторонних) организаций

Лирическое отступление:

Это не реклама УЦ Фирмы 1С, это реальный взгляд на вещи. На волне хайпа, только ленивый не учит, сдаче экзаменов. Цена будет в два раза ниже, но эффект от курсов может быть и отрицательный. Понятно, что я не видел всего многообразия, тут тоже не моя вина, а скорее пожелание тем, кто ведет такие курсы — сделайте «пробник» на  youtube или на своем сайте, чтобы можно было оценить уровень преподавания, это нормально. Посмотрев на некоторые, можно было смело сказать: Теперь я видел все… Топ, это конечно подпись к слайдам у достаточно серьезных курсов: «Каскадная конфигурация». Далее, набор ошибок тянущий на неуд еще на оперативном учете, далее учащиеся исправляют ошибки преподавателя.
Хранение характеристик в табличной части справочника тоже конечно вариант, но для гурманов. Я слышу крики с галерки: А судьи кто? Нет сомнений, если я соберусь выступать публично, на это без слез будет не взглянуть. Хотя… те кто видел спич на Хакатоне в защиту 1С очень даже повеселились и убрали заготовленные помидоры. Но если преподаватель тоже учится на учениках, то давайте это хотя бы будет бесплатно? Поэтому:

Рецепт №1: 
Если вы решили подойти серьезно и у вас есть на это время, только официальные курсы УЦ1 от Павла Станиславовича Белоусова. Но вполне законно (по крайней мере я не знаю запретов) покупать их в складчину, главное, чтобы вся эта компания не развалилась до конца занятий. Для этого есть коллеги, специальные форумы, а для их поиска есть гугл. 

Лирическое отступление:

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

Рецепт №2:

Подпишитесь в youtube на Курсы 1С и экзамены (1С: Учебный центр №1) и очень многое узнаете бесплатно и из первых рук
Из того что нашел я:

  • Как подготовиться к экзамену 1C_Специалист, советы от 1С_Учебного центра №1
  • Как успешно сдать экзамен 1C_Специалист, советы от 1С_Учебного центра №1
  • Как стать  Специалистом по платформе расскажет экзаменатор
  • Использование режима проведения при получении остатков на экзамене «1С_Специалист по платформе».
  • Методика проведения документов в задачах оперативного и бухгалтерского учета — онлайн от УЦ 1
  • Подготовка к 1С_ Специалисту по Платформе — тема Расчеты
  • Подготовка к 1С_Специалисту_ Универсальная последовательность при решении задач оперативного учета
  • Подготовка к экзамену 1С_ Специалист по платформе 1С_Предприятие 8.3 — 1С_Учебный центр №1
  • Рекомендации по разбору постановки задачи экзамена 1С_Специалист по платформе. Анализ ошибок
  • Сдача экзамена 1С_Специалист — советы от экзаменатора
  • Сложные периодические расчеты — Выполнение перерасчета — 1С_Специалист по платформе — УЦ1
  • Бизнес-процессы в 1С

Отдельной строкой СпецКурс 1С 8.3 от Павла Чистова. Это на мой взгляд не альтернатива платным курсам, но отличное дополнение.

Лирическое отступление:

Я очень хорошо отношусь к методикам и стилю Павла, но он учит не тому как нужно сдавать экзамен, а тому что нужно знать на экзамене и далее в жизни. Это немного разные вещи. 
Например чудесно сразу объявлять размерность массива МойМассив = Новый Массив(2); Это хороший стиль программирования (еще бы, вы ведь не тратите время на инициализацию нового массива при добавлении второго элемента) и здорово ускоряет базу, которая в это время… подгрузит вам новости с сайта например.

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

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

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

Так себе Рецепт №3: 

Но он мне немного сэкономил время на подготовку, не забывайте про регулятор скорости просмотра. 80% материала можно пройти на скорости 1.5, остальное на 2, часть на 1 или даже 0.5.

Рецепт №4: 

Недели за две точно, а лучше за месяц, установите «режим тишины». Это значит, что ваше свободное время будет занято 1С, ваш

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

Ссылки в сети интернет:

  • Официальный книжный интернет-магазин Фирмы 1С
  • 1С: Специалист  — официальная информация 
  • Форум Чистова 
  •  Несколько рекомендаций готовящимся к 1С: Специалист по Платформе
  •  Готовимся к экзамену 1С: Специалист по платформе 8.х. Разбор часто встречающихся ошибок.
  •  Экзамен «1С: Специалист» по платформе 8.3 — заметки для успешной сдачи (обновлено 20.08.2014)
  •  Экзамен 1С: Специалист по платформе 8.3. Полностью решенные ВСЕ билеты экзамена  — с него мы переходим к

Практика:

Рецепт №5:

Пишите шпаргалки. Наверняка слышали это от умудренных опытом преподавателей в институте. Это правда. Хотя вам возможно не придется ими воспользоваться (как я уже сказал, просто не хватит времени), самостоятельно написанные, они помогут вам структурировать в голове информацию.
Я делал файл excel по одному листу на билет такого вида (картинки кликабельны)

Потом несколько раз еще проходите цикл без записи: читаете билеты, сверяетесь с записями.

-Мой трудовик был замечательным мужиком,
научил работать с ручным инструментом, дал основы электротехники.
— А мой торговал на рынке нашими поделками, с картонкой:
«Творчество детей с задержкой умственного развития»
©www.anekdot.ru

Рецепт №7:

Когда вы читаете билет, то постарайтесь абстрагироваться от постановки задачи (понятно ведь, что это не Гурген Ашотович, занимающийся торговлей складских стеллажей и их комплектующих попросил написать ему конфигурацию для учета, чтобы обеспечить уникальность деталей). Каждая задача экзамена написана именно так только потому, что в ней сдающему нужно продемонстрировать определенный набор знаний, некоторых из них обязательно, так в каждом билете: партионный учет, соединение таблиц в запросе, проверку на null, полный список как раз в файле ATT83PL.rtf.

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

Согласитесь, когда написано именно так, то остается только сесть за клавиши и исполнить.

Этого состояния добиться крайне желательно.

Мальчик, который сходил только на один урок каратэ,
успел только поклониться хулиганам…
©www.anekdot.ru.

Рецепт №8:

А когда вы пройдете рецепт №7, вы сможете составить десяток практических навыков, скорость которых вам надо подтянуть.
Например, 99% что вы не рисуете бизнес-процессы в быту, не делаете отчетов по регистрам расчета.
Тут большая ошибка думать, что раз вы это знаете, то сделаете быстро. Сделаете вы со своей обычной скоростью, а надо быстрее. Желательно типовые вещи отработать до автоматизма, собственно в этом и цель любого обучения, не только этого. Пример конечно это оформление отчетов.
Есть немного вещей посложнее на мой взгляд, это например попадание в интервал от и до в запросе, разбивка периода по датам в запросе, разбивка периода по датам в модуле проведения, все для расчетных задач. Их надо по нескольку раз сделать, чтобы понять логику.

Рецепт №9:

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

Количество отработок по рецептам №8 и №9 я не называю, оно у всех разное. Кому то надо весь задачник перерешать, кому то пяти раз достаточно, трех мало наверняка. Либо все решения задач начинаете именно с этого, с первоначальной настройки. 
Еще раз повторюсь — проверяете по секундомеру, а не по ощущениям — знаю/сделаю.

Рецепт №10:

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

Рецепт №11:

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

Лирическое отступление:

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

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

Общие моменты

  1. Создание интерфейса. Разделы, подразделы
    Интерфейс клиентского приложения
  2. Переключение на управляемый режим блокировок
  3. Индексирование измерений регистров
  4. Для вывода сообщений в запросе получать представления
  5. Вид номенклатуры проверять условие на НЕ Услуга
  6. В запросах не забыть ЕСТЬNULL()
  7. Включить разделение итогов у регистров
  8. В отчетах свой формат заголовка

Оперативный учет

  1. «Проблема копеек»
  2. Два варианта проведения

Бухгалтерский учет

  1. Признак учета  Количественный для учета по количеству
  2. Признак учета  для субконто Суммовой снять где он не нужен

Периодические расчеты

  1. При расчете на форме очищать движения регистров,  движения регистров заполнять из таблиц

Рецепт №12:

Тщательно изучите эти вещи открыв каркасную конфигурацию:

  • состав метаданных. Вы должны четко знать какой объект на каком месте в ней находится. Тогда часть работы вы решите копипастом или перетягиваением реквизитов, например в документах есть количество и сумма, перетащить их в ресурсы регистров 3 секунды и минимальная возможность ошибиться.
  • синтаксис-помощник. Классика это БлокировкаДанных — из спрвки можно вытащить код подходящий на все случаи жизни.
  • шаблоны кода.  ctrl-q если кто подзабыл. На экзамене это как минимум Новый СообщениеПользователю.
  • горячие клавиши вообще, чем больше вы их запомните, тем проще будет в работе и ctrl-пробел для автодополнения в частности
  • все конструкторы, их в 1С не меньше 14. Для экзамена, конструктор форм (мы договорились их создавать), конструктор движений, конструктор запроса и мастер создания объекта метаданных

Рецепт №13:

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

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

Далее переходим к самому экзамену.

Рецепт №14:

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

Лирическое отступление:

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

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

Рецепт №15:

Как бы не шел процесс, делайте перерывы как минимум по 5 мин между оперативным и бухгалтерским и бухгалтерским и СПР.
Примерно через 2 и 3.5 часа от начала, помните о чем мы договаривались в рецепте №10 — 1.5 часа на задачу!, не получается, не залипайте надолго, потом можете сняться за пару минут.
Сохраняйте базу в этот момент.

Лирическое отступление:

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

Рецепт №16:

Бизнес-процессы (управляемые формы) нужно сделать сразу и забыть о них, документ «Операция» сделать как только будет понятно количество субконто в задаче и тоже забыть о нем.
 

Рецепт №17:

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

Рецепт №18:

Все движения делаете сначала конструктором движений. Потом можете переименовать процедуру ОбработкаПроведения и делать еще.
Все объекты метаданных, желательно даже существующие проходите мастером по вкладкам. Так вы 100% ничего не пропустите по сравнению с палитрой свойств.

Все запросы соответственно конструктором запросов и ой как желательно в пользовательском режиме на тестовых данных.
На пятом часу будет такой ажиотаж, что можно будет упереться в простейший Дк Кт и встать намертво.
Я об этом знал и все равно наступил на эти грабли, когда смотришь на код, он простой и правильный, но не работает.
Потерял 10 мин, ушел в пользовательский режим, за две минуты снялся, но паровоз уже уходил…

Рецепт №19:

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

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

Рецепт №20:

Сохранитесь за пару минут до окончания в варианте без выдачи ошибок в пользовательском режиме. Ровно по времени вас просто выбьет из сеанса. Согласитесь, что непроводящийся документ начисления зарплаты гораздо хуже, чем не рассчитанный один из видов начислений.
Будете кричать в надпись «Завершение сеанса» — Да я только, дебет с кредитом перепутал.
С этим никто на дистанционной сдаче не поможет.

Лирическое отступление:

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

Ничто так не портит цель, как попадание …
©www.anekdot.ru

Рецепт №21 и что дальше:

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

Отнеситесь ко всему здесь сказанному критически.
Если что-то вспомнится еще допишу. 
Да… еще… тем кто сдаст… все только начинается.

Лирическое отступление:

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

Для начала вас накроет эффект Даннинга — Крюгера.

Новый план обучения и вперед.

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

Подготовка к экзамену

+7(495)688-90-02, spec@1c.ru,  

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

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

Первый этап подготовки: получить сертификат «1С:Профессионал». Перед каждым
«1С:Специалистом» есть экзамен-допуск — «1С:Профессионал»,
т.е. если Вы планируете сдавать экзамен «1С:Специалист» по программе «1С:Бухгалтерия», то Вам предварительно нужно получить сертификат
«1С:Профессионал» по программе «1С:Бухгалтерия 8» или программе «1С:Управление производственным предприятием 8». Экзамен «1С:Профессионал» —
это тест, из 14 вопросов теста нужно верно ответить минимум на 12. К «1С:Профессионалу», как и к любому другому экзамену нужно обязательно
готовиться, без подготовки его сдать очень трудно. Подробно о подготовке к экзамену «1С:Профессионал» можно почитать на сайте фирмы «1С» в
разделе «Курсы 1С / Экзамены 1С / 1С:Профессионал /Подготовка к тестированию».

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

Существует три способа подготовки к экзамену «1С:Специалист»:

  1. пройти курсы обучения;
  2. изучить методическую литературу;
  3. накопить личный опыт работы по настройке и адаптации программ.

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

Курсы обучения

Выбору курсов на начальном этапе подготовки посвящена отдельная статья «Как выбрать обучающий курс 1С».

Курсы наиболее предпочтительны для подготовки к экзамену:

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

Для подготовки к экзамену «1С:Специалист» по платформе рекомендуются следующие курсы 1С:

  1. Комплексный курс «Конфигурирование в системе «1С:Предприятие 8» в ЦСО;
  2. «Конфигурирование платформы «1С:Предприятие 8» в 1С:Учебном центре № 1.

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

  1. Механизм системы компоновки данных в платформе «1С:Предприятие 8»;
  2. Механизм бизнес-процессов в платформе «1С:Предприятие 8»;
  3. Анализ данных и прогнозирование средствами платформы «1С:Предприятия 8»;
  4. Работа с формами в «1С:Предприятии 8»;
  5. Средства интеграции и обмена данными в системе «1С:Предприятие 8»;
  6. Использование запросов в системе «1С:Предприятие 8».

Для подготовки к экзамену «1С:Специалист» по прикладным решениям рекомендуются следующие курсы 1С:

  1. «1С:Предприятие 8». Внедрение и адаптация конфигурации «Бухгалтерия предприятия» (конфигурирование в типовом решении)
    в ЦСО или
    аналогичный курс
    в 1С:Учебном центре № 1;
  2. «1С:Предприятие 8». Внедрение и адаптация прикладного решения «1С:Управление торговлей 8»
    в ЦСО;
  3. «1С:Предприятие 8». Внедрение и адаптация конфигурации «Зарплата и Управление Персоналом»
    в ЦСО или
    Конфигурирование подсистем расчета зарплаты и управления персоналом в прикладных решениях для «1С:Предприятия 8»
    в 1С:Учебном центре № 1.

Для подготовки к экзамену «1С:Специалист-консультант» по прикладным решениям рекомендуются следующие курсы 1С:

  1. Внедрение прикладного решения «1С:Бухгалтерия 8» версии ПРОФ (ред.3.0) в 1С:Учебном центре №1
  2. Внедрение прикладного решения «1С:Управление торговлей 8» в 1С:Учебном центре №1
  3. Внедрение прикладного решения «1С:Зарплата и управление персоналом 8» в 1С:Учебном центре №1

Методическая литература

Методическая литература является прекрасным дополнением к курсам обучения. Полный перечень литературы всегда доступен на v8.1c.ru.

Самостоятельная работа

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

Примеры билетов по всем экзаменам также выложены на нашем сайте.

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

Вопрос №1: Как оптимально готовиться к экзамену 1С:Специалист по платформе?

Подскажите, как правильно готовиться к сдаче экзамена? Варианты есть такие:

 
1) Решать абсолютно все задачи по каждому разделу учета?

 
2) Решать какую-то часть задач по каждому разделу учета? Как в этом случае определить оптимальное количество задач, которые необходимо решить?

 
3) Решать только те задачи, которые попадаются на экзамене?

 
4) Ваш собственный вариант и ваши советы.

Ответ

Постарался скомпоновать ответы на все Ваши вопросы в виде общей “инструкции”. Наиболее оптимальным будет такой способ подготовки:

  • Пройти все темы Общего раздела курса Подготовка к аттестации 1С:Специалист по платформе 1С:Предприятие 8.3 (обязательно в первую очередь)
  • Изучить остальные разделы, при этом порядок изучения следующих разделов зависит от Ваших личных предпочтений и начальных знаний, если для Вас это не принципиально, можно пройти их в том порядке, в котором разделы приведены на стартовой странице. В процессе изучения каждого раздела стоит обращаться к задачам из сборника, которые упомянуты в этом разделе. К концу изучения раздела должно сформироваться понимание, как решить любую задачу. Прорешивать ли все задачи раздела из сборника, зависит от времени, которым располагаете на подготовку. Программа минимум на этом этапе – решить те задачи, которые кажутся наиболее сложными и/или вызывают затруднения (часто это задачи на расчетные механизмы)
  • После прохождения всех разделов нужно обязательно попробовать порешать билеты целиком. Идеально, конечно, было бы прорешать все найденные билеты (в интернете можно поискать отзывы коллег, сдававших экзамен, с описанием, какие конкретно билеты им встречались на аттестации), но при нехватке времени можно составить для себя супербилет, укомплектовав его самой сложной (именно для Вас) задачей из каждого раздела
  • Очень важно пару раз порешать билеты или свой супербилет на время, чтобы понимать насколько Вы укладываетесь в отведенное время (нужно добиться, чтобы оставался хотя бы небольшой запас). Прорешивание на время также поможет выработать для себя оптимальную последовательность действий: на чем можно сэкономить время, где можно ускориться, какую тему повторить, чтобы решать быстрее.

Вопрос №2: В чем суть свойства “Проверка заполнения” регистров?

Для какой цели в регистрах есть свойство “Проверка заполнения” – “Выдавать ошибку”? Если все равно при установке данного свойства у измерения регистра, регистр  допускает его пустоту при проведении и такое движение добавляется в набор записей регистра. Адекватно для такой цели отрабатывает свойство, о котором написано в теме курса “Запрет незаполненных значений“. Поэтому стало интересно, для чего существует свойство “Проверка заполнения” у регистра? Вариант с пустой Номенклатурой и заполненным количеством исключен за счет “Запрета незаполненных значений” в самом регистре.  А установка свойства у табличной части документа “Приходная накладная” – Проверка заполнения – Выдавать ошибку, только для того, чтобы не допустить проведение документа с полностью пустой табличной части. Чем плох такой расклад ситуации, к чему приведет проведение полностью пустого документа?

Ответ

  1. О свойстве “Проверка заполнения” в регистрах.

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

Записи регистров накопления и регистров сведений, подчиненные регистратору, всегда связаны с каким-то документом, который является регистратором для записей регистра (и, как правило, сам формирует эти записи регистра при проведении – (сформированные записи регистра – это и есть движения документа)). Однако платформа позволяет создавать и изменять записи таких регистров и напрямую, минуя проведение документов-регистраторов. Есть возможность делать это и штатными интерактивными средствами. Например, можно создать для регистра накопления форму набора записей и добавить, команду ее вызова (например, в форму списка регистра). Таким образом появится возможность исправлять записи вручную, произвольным способом, без проведения документов – прямо в созданной форме. При этом в форме будет обрабатываться свойство “Проверка заполнения”, установленное для полей регистра – аналогично тому, как это делается для независимых регистров накопления, справочников и документов.

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

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

Если Движения.ОстаткиНоменклатуры.ПроверитьЗаполнение() Тогда …

  1. О проверке заполнения табличной части документа (проверка на отсутствие строк).

Как правило, документы с пустой табличной частью – это пользовательские ошибки. Логически подобные операции некорректны (не может быть оформлено поступление или продажа “ничего” – то есть при поступлении или продаже в документе обязательно должна быть хотя бы одна строка с каким-то товаров). Здесь все аналогично тому, как определяются признаки необходимости проверки заполнения для реквизитов документов: “пустая” номенклатура, нулевое количество также некорректны и должны пресекаться.

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

Уточняющий вопрос

То есть на экзамене достаточно будет

 
1) установить свойство “Проверка заполнения – Выдавать ошибку” для конкретных реквизитов документа -“Номенклатура и Количество” (без установки в регистре “Запрет незаполненных значений”). В таком случае проведение с полностью пустой табличной частью будет исключено. (Я к тому, что нет ведь смысла устанавливать и в документе проверки на реквизиты и плюс в регистре добавлять “Запрет незаполненных значений” – что-то одно, либо первый, либо второй вариант?)

 
2) для документа устанавливаем “Проверка заполнения – Выдавать ошибку” для табличной части в целом, но и в регистре устанавливаем “Запрет незаполненных значений” для измерения “Номенклатура”. Но тогда, есть вероятность что останется незаполненным реквизит документа “Количество” и проверку заполнения для данного реквизита, тоже необходимо установить в “Выдавать ошибку”, только в данной теме этого нет, следовательно, это допускается, либо подразумевается, что об этом и так нужно знать?

Ответ

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

Эта проверка сработает в интерактивном режиме – до попытки записи (проведения) документа (соответственно, до начала транзакции записи и проведения документа). Этот вариант менее затратен для системы, так как транзакция записи ещё не открыта и откатывать нечего, и будет лучше, если ошибки заполнения обнаружатся на этом этапе.

Также рекомендуется установить свойство “Запрет незаполненных значений” для тех измерений регистра, которые по логике задачи не могут быть пусты. Эта проверка сработает всегда, при любой попытке записи данных в регистр (не только в интерактивном режиме). Тем самым автоматически обеспечивается правильность заполнения данных регистра. Если регистр заполняется при проведении документа, то эта проверка сработает позже, чем проверка заполненности реквизитов (см. свойство “Проверка заполнения”) – во время проведения документа (в транзакции записи и проведения документа). Этот вариант требует больше ресурсов системы (т.к. в случае ошибки необходимо будет отменять транзакцию), но и более “надежен”, т.к. сработает всегда.

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

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

Содержание:

1.      Какие возможности дает экзамен на специалиста по платформе 1С

2.      Как получить сертификат по платформе 1С

2.1      Пройти обучение на сертифицированных курсах 1С

2.2      Подготовка к экзамену на специалиста по платформе 1С самостоятельно

2.3      Сдать дополнительные экзамены преподавателя ЦСО

2.4      Использовать в подготовке к экзамену на специалиста по платформе 1С все вышеперечисленное  

1.      Какие возможности дает экзамен на специалиста по платформе 1С

Добрый день уважаемые коллеги. Давайте сегодня поговорим о том, как все-таки можно сдать экзамен на специалиста по платформе 1С:Предприятие 8.3.

Для начала давайте разберемся, что дает данный экзамен и сам сертификат по платформе.

Сертификат по платформе удостоверяет о том, что владелец данного сертификата имеет достаточную квалификацию по разработке и модификации прикладных решений на технологической платформе системы программ «1С:Предприятия 8.3». Иначе говоря, Вы гарантированно не сломаете работающую (разрабатываемую, модифицируемую) конфигурацию и сможете внести корректные изменения в конфигурацию в соответствии с техническим заданием. И у Вас появляется преимущество при трудоустройстве по профилю.  

2.      Как получить сертификат по платформе 1С

Что дает экзамен и сертификат стало понятно, а что необходимо сделать, чтобы получить сертификат по платформе 1С:

1.      Для начала необходимо подготовиться и сдать экзамен «1С:Профессионал» по технологической платформе 8.3. Сертификат профессионала по платформе дает допуск к сдаче непосредственно специалиста по платформе 1С Предприятие 8.3. Подробно о подготовке к экзамену «1С:Профессионал» можно почитать на сайте фирмы «1С» в разделе «Курсы 1С / Экзамены 1С / 1С:Профессионал /Подготовка к тестированию».

2.      По результатам успешной сдачи экзамена на профессионала можно приступать готовиться к сдаче экзамена на специалиста по платформе 1С. Существует несколько вариантов подготовки:

a.      Пройти обучение на сертифицированных курсах 1С;

b.      Подготовиться самостоятельно, изучая методическую литературу (ее сейчас очень много);

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

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

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

2.1 Пройти обучение на сертифицированных курсах 1С

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

2.2 Подготовка к экзамену на специалиста по платформе 1С самостоятельно

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

При подготовке самостоятельно я рекомендую использовать сборник задач для подготовки к экзамену «1С:Специалист» по платформе «1С:Предприятие 8» . Как показывает мой личный опыт, если Вы решите по 20-30 задач из каждого раздела учета, времени на экзамене Вам хватит с большим запасом (длительность экзамена 5 часов, мне для решения билета потребовалось около 4 часов.)  

2.3 Сдать дополнительные экзамены преподавателя ЦСО

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

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

·         Бухгалтерский учет. Это логическое продолжение ЦСО оперативного учета. В ЦСО бухгалтерского учета будут рассмотрены базовые механизмы работы с планом счетов, субконто, построением управленческих отчетов по данным бухгалтерского учета. Данный курс, как я уже говорил, полностью опирается на знания, полученные в курсе оперативного учета.

·         Периодические расчеты. Данный курс даст Вам знания и навыки работы с периодическими расчетами для сдачи экзамена специалист по платформе 1С:Предприятие 8.3 (планы видов расчета, регистры расчета, как все связанно между собой, способы расчета: что такое метод отклонений и расчет по табелю).  

2.4 Использовать в подготовке к экзамену на специалиста по платформе 1С все вышеперечисленное

Это самый продуктивный метод подготовки. В итоге Вы получите достаточные знания для сдачи экзамена на специалиста по платформе 1С.

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

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

Специалист компании ООО «Кодерлайн» 

Дмитрий Гречушкин.

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

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

Постоянный адрес статьи: http://1cv8.comp.bashnet.ru/
Альберт Балаков, сотрудник фирмы-партнера «1С»,
специалист по разработке и внедрению решений на плЭлектронная почта: 1cv8@bashnet.ru
Дата написания — ноябрь 2004 г.

1. Общие положения.

«1С:Предприятие 8.0» не разделяется на компоненты, поэтому экзамен сдается сразу по трем направлениям: оперативный учет, бухгалтерский учет, сложные периодические расчеты.

Внимательно ознакомьтесь с официальным документом «Экзамен 1С:Специалист по платформе 1С:Предприятие 8.0», расположенным на сайте фирмы «1С» (Приложение 4). Ниже будет проведен разбор требований, изложенных в этом документе.

Для подготовки желательно иметь книги М.Г. Радченко «Практическое пособие разработчика» и С.А. Митичкина «Разработка в системе 1С:Предприятие 8.0». Хочу особо обратить внимание на книгу М.Г. Радченко, где на сквозном примере, подробно описывается методика применения основных объектов конфигурации.

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

Помимо самостоятельной подготовки, есть возможность пройти курсы в Центрах Сертифицированного Обучения (ЦСО). Более подробно об этом см. www. v 8.1 c. ru и www.1 c. ru . Судя по отзывам слушателей, курсы ЦСО очень эффективны, т.к. на них разбираются типовые примеры и подходы, реализацию которых и будут ожидать от Вас на экзамене.

Выделю моменты, существенные для успешной сдачи экзамена.

  • В период подготовки выполните как можно больше примеров сертификационных заданий. Тренироваться желательно «в боевых условиях», засекайте время и постарайтесь полностью решить задачу. Дополнительные примеры заданий Вы можете найти в сети (Приложение 4).
  • Получив задание, не начинайте решение, пока полностью не проанализируйте его. Нередки случаи, когда, например, расчетная часть использует данные оперативного учета или для построения отчета требуется не оговоренный специально разрез аналитического учета. В этом случае, если что-то уже реализовано, то придется переделывать.
  • Пользовательский интерфейс, если это не оговорено специально, не играет значительной роли. Не тратьте время на оформление или добавление полезных, но не обязательных возможностей. Сосредоточьтесь на функционале задачи, остальное доделаете, если останется время.
  • Если что-то не получается, отложите это и максимально сделайте то, что можете. Чем больше решено подзадач, пусть и небольших, тем лучше.
  • Следует четко понимать, какие части программы, где располагать. Например, алгоритм расчета начислений и удержаний должен располагаться в общем модуле; в модуле формы желательно разместить только то, что существенно для работы формы как объекта интерактивного взаимодействия с пользователем; и т.д.
  • Разберитесь с неясными моментами до аттестации. Экзаменационные 4 часа рассчитаны на то, что Вы знаете как реализовать функционал, и времени на книги и синтакс-помощник остается мало.
  • Изучите объекты метаданных, присутствующие в каркасной конфигурации. Ознакомьтесь, какие регистры, справочники и документы уже заполнены.

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

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

3. Реализация основных механизмов.

В книге М.Г. Радченко подробно рассмотрена реализация большинства необходимых механизмов. Для лучшего понимания дальнейшего материала рекомендуется разобраться с примерами книги.

На сайте статьи выложены две конфигурации, являющиеся приложением к данному материалу. За основу этих демонстрационных примеров принята каркасная конфигурация.

  • Конфигурация «Работа с регистрами накопления, бухгалтерии и расчета». В этой конфигурации продемонстрирована реализация контроля остатка и средневзвешенного списания по регистрам остатков и бухгалтерии. В ней же реализованы затронутые ниже вопросы работы с регистрами расчета и организации валютного учета.
  • Конфигурация «Партионное списание» — название говорит само за себя.

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

  • Приложение 1 — пример программного кода модуля документа «Расходная», реализующего контроль остатка и средневзвешенного списания по регистрам остатков и бухгалтерии.
  • Приложение 2 — пример программного кода модуля документа «Расходная», реализующего партионное списание по методу FIFO.
  • Приложение 3 — пример программного кода модуля документа «Начисление зарплаты», позволяющий, в частности, обрабатывать внесение записей в текущем расчетном периоде за прошлый.
  • Приложение 4 — список ресурсов сети, полезных для подготовки к экзамену.

Далее во фрагментах кода используется функция обПроверкаНаNULL(), расположенная в общем модуле «Общий».

Функция обПроверкаНаNULL( ЛПараметр ) Экспорт

                Возврат ?( ЛПараметр=NULL, 0, ЛПараметр );

КонецФункции

3.1. Запросы.

Универсальный механизм, лежащий в основе эффективного взаимодействия почти со всеми объектами 1С:Предприятия 8.0 – это запросы. Запросы подробно описаны в документации, книгах и статьях на дисках ИТС.

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

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

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

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

Еще один прием, позволяющий контролировать результат запроса в период отладки.

Результат = Запрос.Выполнить();
	// выгружаем результат запроса в ТЗ и инициируем выбор строки
	Результат.Выгрузить().ВыбратьСтроку();

3.2. Организация контроля остатка и средневзвешенного списания по регистрам остатков и бухгалтерии.

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

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

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

Пример программного кода модуля документа «Расходная» приведен в Приложении 1.

3.2. Организация партионного списания.

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

Приведу пример простейшей реализации партионного учета. В регистр «ОстаткиНоменклатуры» добавьте измерение «Документ» — он будет идентифицировать партии товаров. Исправьте проведение «Приходной накладной» так, чтобы осуществлялось движение по новому измерению. При проведении «Расходной накладной» нужно развернуть запросом остаток конкретной номенклатуры по документам прихода и последовательно списать. Если используется метод списания FIFO – документы в запросе сортируются по возрастанию даты, если LIFO – по убыванию.

Пример программного кода модуля документа «Расходная», реализующего партионное списание по методу FIFO , приведен в Приложении 2.

3.3. Организация валютного учета.

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

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

Курсовая разница возникает по денежным средствам, номинал которых выражен в валюте, отличной от валюты бухгалтерского учета. Так как курс постоянно изменяется, то на отчетную дату произведение валютной суммы на курс валюты, будет отличаться от соответствующей рублевой суммы. Если (валютная сумма) * (курс валюты) > (сумма в валюте бухгалтерского учета), то это называется положительной курсовой разницей и в бухгалтерском учете отражается как внереализационный доход, иначе – отрицательной курсовой разницей (внереализационный расход).

Рассмотрим организацию валютного учета на примере. Пусть требуется вести валютный учет на счете «Касса» плана счетов «Управленческий», причем разрешается корреспонденция валютного и невалютного счетов.

Для организации валютного учета добавьте в план счетов новый признак учета – «Валютный» и установить этот признак у предопределенного счета «Касса».

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

В форме документа «Операция» и форме списка журнала документов «ЖурналОпераций» разместите колонки «ВалютаДт», «ВалютнаяСуммаДт», «ВалютаКт» и «ВалютнаяСуммаКт».

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

Пример запроса, разворачивающего счет «Касса» по валютам:

ВЫБРАТЬ
	УправленческийОстатки.Валюта,
	УправленческийОстатки.СуммаОстатокДт,
	УправленческийОстатки.ВалютнаяСуммаОстатокДт
ИЗ
	РегистрБухгалтерии.Управленческий.Остатки(&Дата, Счет = &СчетКасса, , ) КАК УправленческийОстатки

3.3. Сложные периодические расчеты.

3.3.1. Работа с данными графиков по фактическому периоду действия.

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

Замечание. В книге М.Г. Радченко при обработке запроса к виртуальной таблице данных графика регистра расчета не осуществляется проверка на NULL. Поэтому при расчете начислений в периоде, где данные графика не заполнены «книжный» алгоритм выдает ошибку. Рекомендую исправить код следующим образом:

Норма = обПроверкаНаNULL( ВыборкаРезультата.Норма );
Факт   = обПроверкаНаNULL( ВыборкаРезультата.Факт );
Если Норма =0 Тогда
    …

Вы можете убедиться в сказанном, проведя документ «Начисление зарплаты» № 3 от 01.12.2004 из конфигурации «Работа с регистрами накопления, бухгалтерии и расчета», прилагаемой к данной статье.

3.3.2. Работа с вытесняющими расчетами – получение дополнения.

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

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

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

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

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

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

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

3.3.3. Работа с базовыми видами расчета – получение базы.

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

Замечу, что в каркасной конфигурации, при задании параметров запроса «ИзмеренияОсновного» и «ИзмеренияБазового», следует передавать массив из трех элементов, как показано ниже.

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

Изм = Новый Массив(3);
Изм[0] = "Сотрудник";
Изм[1] = "Подразделение";
Изм[2] = "Должность";

Запрос.УстановитьПараметр("ИзмеренияОсновного", Изм);
Запрос.УстановитьПараметр("ИзмеренияБазового", Изм);

3.3.4. Использование начального сальдо.

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

Отчет расчетный листок для вывода результатов.»

Сотрудник Вид расчета

Нач. Сальдо

Начислено

Выплаты

Иванов  

100

200

270

  Оклад

120

  Премия

80

Петров  

150

150

  Оклад

150

Итоги  

100

350

420

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

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

3.4. Работа со сводной таблицей.

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

Пример — сводная таблица, демонстрирующая прибыль фирмы в разрезе видов деятельности (строки) и подразделений (колонки):

Результат = Запрос.Выполнить();

Табл = ЭлементыФормы.ПолеТабличногоДокумента1;
СводнаяТабл = Табл.ВстроенныеТаблицы.СводнаяТаблица1;
СводнаяТабл.ИсточникДанных = Результат;
СводнаяТабл.Строки.Добавить( СводнаяТаблица.Поля.ВидыДеятельности );
СводнаяТабл.Колонки.Добавить( СводнаяТаблица.Поля.Подразделения );
СводнаяТабл.Данные.Добавить( СводнаяТаблица.Поля.Прибыль );

Приложение 1.

Пример программного кода модуля документа «Расходная», реализующего контроль остатка и средневзвешенного списания по регистрам остатков и бухгалтерии.

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


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

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

//________________________________________________________
Процедура ОбработкаПроведения(Отказ, Режим)
	// Получим список Номенклатуры с помощью запроса
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	РасходнаяТовары.Номенклатура
	|ИЗ
	|	Документ.Расходная.Товары КАК РасходнаяТовары
	|ГДЕ
	|	РасходнаяТовары.Ссылка = &Ссылка";
	
	Запрос.УстановитьПараметр("Ссылка", Ссылка);
	Результат = Запрос.Выполнить();
	ТЗ = Результат.Выгрузить();
	Масс = ТЗ.ВыгрузитьКолонку("Номенклатура");
	СписокНоменклтуры = Новый СписокЗначений;
	СписокНоменклтуры.ЗагрузитьЗначения( Масс );
	
	// Проведем по регистрам накопления с контролем остатков
	// ХватаетКоличества_ОперУчет = Ложь, если на остатке нет достаточного количества
	ХватаетКоличества_ОперУчет  = ПровестиПоРегистрамНакопления( СписокНоменклтуры );
	
	// Проведем по регистрам бухгалтерии с контролем остатков
	// ХватаетКоличества_БухгУчет = Ложь, если на остатке нет достаточного количества
	ХватаетКоличества_БухгУчет  = ПровестиПоРегистрамБухгалтерии( СписокНоменклтуры );
	
	// Анализируем режим проведения документа
	ПроведемДокумент = Истина;
	Если Режим = РежимПроведенияДокумента.Оперативный Тогда
		Если ХватаетКоличества_ОперУчет = Ложь или ХватаетКоличества_БухгУчет = Ложь Тогда
			ПроведемДокумент = ложь;
		КонецЕсли;
	КонецЕсли;
	
	Если ПроведемДокумент Тогда
		// записываем движения регистров
		Движения.ОстаткиНоменклатуры.Записать();
		Движения.Управленческий.Записать();
	Иначе
		Отказ = Истина;
	КонецЕсли; 
КонецПроцедуры

Приложение 2.

Пример программного кода модуля документа «Расходная», реализующего партионное списание по методу FIFO.


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

Приложение 3.

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


Процедура ОбработкаПроведения(Отказ, Режим)
	Для Каждого ТекСтрокаСписок Из Список Цикл
		Дата1 = НачалоДня( ТекСтрокаСписок.ДатаНачала );
		Дата2 = КонецДня( ТекСтрокаСписок.ДатаОкончания );
		
		// регистр Расчеты
		Движение = Движения.Расчеты.Добавить();
		Движение.Сторно = Ложь;
		Движение.ВидРасчета = ТекСтрокаСписок.ВидРасчета;
		Движение.ПериодДействияНачало = Дата1;
		Движение.ПериодДействияКонец = Дата2;
		Движение.ПериодРегистрации = ПериодРегистрации;
		Движение.БазовыйПериодНачало = Дата1;
		Движение.БазовыйПериодКонец = Дата2;
		Движение.Сотрудник = ТекСтрокаСписок.Сотрудник;
		Движение.Подразделение = ТекСтрокаСписок.Подразделение;
		Движение.Должность = ТекСтрокаСписок.Должность;
		Движение.Результат = 0;
		Движение.Данные = ТекСтрокаСписок.Размер;
		Движение.График = ТекСтрокаСписок.График;
	КонецЦикла;
	
	// для того чтобы получить дополнение требуется записать движения	
	Движения.Расчеты.Записать(); 
	
	// Обработка дополнения, если оно возникло
	Дополнение = Движения.Расчеты.ПолучитьДополнение();
	Если Дополнение.Количество() > 0 Тогда
		// визуальный контроль таблицы дополнения
		Дополнение.ВыбратьСтроку("Просмотр записей дополнения");
		
		Для каждого СтрокаДоп Из Дополнение Цикл
			// регистр Расчеты
			Движение = Движения.Расчеты.Добавить();
			Движение.Сторно = Истина; // вносим сторно - запись !
			Движение.ВидРасчета = СтрокаДоп.ВидРасчета;
			Движение.ПериодДействияНачало = СтрокаДоп.ПериодДействияНачалоСторно;
			Движение.ПериодДействияКонец = СтрокаДоп.ПериодДействияКонецСторно;
			Движение.ПериодРегистрации = СтрокаДоп.ПериодРегистрацииСторно;
			Движение.БазовыйПериодНачало = СтрокаДоп.БазовыйПериодНачало;
			Движение.БазовыйПериодКонец = СтрокаДоп.БазовыйПериодКонец;
			Движение.Сотрудник = СтрокаДоп.Сотрудник;
			Движение.Подразделение = СтрокаДоп.Подразделение;
			Движение.Должность = СтрокаДоп.Должность;
			Движение.Результат = 0;
			Движение.Данные = СтрокаДоп.Данные * (-1); 
			Движение.График = СтрокаДоп.График;
		КонецЦикла;
		
		// записываем движения регистров с движениями дополнения
		Движения.Расчеты.Записать();
	КонецЕсли; 
	
	// Расчитать оклад
	ВыполнитьРасчетНачислений( Движения.Расчеты, ПланыВидовРасчета.Основной.Оклад );
	Движения.Расчеты.Записать( , Истина );
	
	// Расчитать больничный
	ВыполнитьРасчетНачислений( Движения.Расчеты, ПланыВидовРасчета.Основной.Больничный );
	Движения.Расчеты.Записать( , Истина );
КонецПроцедуры

Приложение 4.

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

  • http://www.1c.ru/rus/partners/training/files/att80pl.zip — официальный документ «Экзамен 1С:Специалист по платформе 1С:Предприятие 8.0» на сайте фирмы «1С» ;
  • http://www.1c.ru/rus/partners/training/files/confc_1.rar — каркасная конфигурация на сайте фирмы «1С» ;
  • http://www.v8.1c.ru/news/newsAbout.jsp?id=313&printversion=1 — статья «Экзамен 1С:Специалист. Взгляд с той стороны прилавка» на сайте фирмы «1С» ; 
  • http ://www.mista.ru – сайт и конференция, поддерживаемые С.А. Митичкиным, автором книги «Разработка в системе 1С:Предприятие 8.0»;
  • http ://www.itland.r u – сайт и форумы по 1С:Предприятие 7.7 и 8.0;
  • http://www.kuban.ru/cgi-bin/forum/forum9.cgi?page=1 — многолюдный форум «Территория 1С».
   Очень Любознательная

04.12.20 — 23:39

Доброй ночи, уважаемые форумчане. Надеюсь, тему верно выбрала)

История такая. Работаю во франче чуть больше двух лет, программист. Уже давно хочу сдать Спеца по платформе. Профессионал уже есть. Вопрос в том, когда готовиться. Работаем мы с 10 до 6, иногда бывает сверхурочка, 3 раза в неделю ещё на тренировки хожу. Делать это только по выходным — слишком долго будет, да и забываться накопленное будет. Поделитесь опытом, у кого сколько времени это заняло, где вы изыскивали время? Приятелей из московских франчей руководство отпускало на месяц готовиться, причем с сохранением ЗП, а наша директор говорит:»Я ERP полгода по ночам сама разбирала, а ты жалуешься.»

   ks_83

1 — 04.12.20 — 23:45

Если реально хочешь сдать, то время найдешь.

   dimaldinho

2 — 04.12.20 — 23:50

(1) +100500

   shuhard

3 — 05.12.20 — 05:59

(1) +100500*2

   youalex

4 — 05.12.20 — 06:02

(0) «Я ERP полгода по ночам сама разбирала» — тянет на мем)

А по сабжу уже все сказали.

И да, если ты не гений-гений, задачи лучше реально прорешивать. Хотя бы знать алгоритм решения.

   rphosts

5 — 05.12.20 — 06:04

(0) встала в 6, до 7 умылась, позавтракала… 7-9 — 2 часа на учёбу, если нет сверхурочки — вечером ещё пару часиков

   rphosts

6 — 05.12.20 — 06:06

(4) в идеале решил задачу сам — посмотрел образцовое решение, разобрал отличия, решил повторно, сделал себе записи о моментах на которые обратить внимание.

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

   youalex

7 — 05.12.20 — 06:06

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

   xenos

8 — 05.12.20 — 07:35

(0)

> Вопрос в том, когда готовиться. Работаем мы с 10 до 6, иногда бывает сверхурочка,

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

Июнь, первая половина Июля, Август, Сентябрь, первая половина Октября — месяцы когда бухи ходят в отпуска.

> Делать это только по выходным — слишком долго будет, да и забываться накопленное будет.

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

1. Этап длинный, небольшими порциями поглощаешь информацию. Берешь курсы Чистова, с начала 8.2, проходишь по 1-2 задачи в день, потом по 8.3 проходишь по 1-2 задачи в день, потом берешь Белоусова — у него подача материала специфическая и очень трудная для восприятия, но его решение задачь по регистрам Расчетам лучше зазубрить. Я бы даже сказал, что критерий подготовки, это способность повторить решения Белоусова по расчетам, без подглядывания.

2. За неделю перед экзаменом, садишься и с утра до вечера прорешиваешь задачи. Можешь взять отпуск.

   Фрэнки

9 — 05.12.20 — 08:36

годный пятнично-субботний наброс… имхо, не взлетит

   PuhUfa

10 — 05.12.20 — 08:49

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

   Aleksey

11 — 05.12.20 — 08:58

Конспект есть? Тогда сейчас докурю и пойдём сдавать. (с) анекдот

   Фрэнки

12 — 05.12.20 — 09:49

(10) нет работы — нет часов

нет часов — нет денег

грустно

   VKS

13 — 05.12.20 — 10:15

«Я ERP полгода по ночам сама разбирала»

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

Будет желание — сдадите. Все остальное — отмазки.

   Free_soul

14 — 05.12.20 — 10:16

(0) а зачем оно тебе? или начальство обожает еще картинку в иконостас в коридоре (франч?)

   Prog111

15 — 05.12.20 — 12:04

(0) Так у тебя полно времени: с утра можно 2 часа выделить, и вечером ещё часа 2-3. Плюс суббота и воскресенье.

   sevod

16 — 05.12.20 — 12:20

(0) Тебе он зачем? Я спеца сдавал до того как в 1С пошел. Помогло. А тебе зачем? Ты два года уже работаешь. Лучше работу поменяй.

   PuhUfa

17 — 05.12.20 — 12:20

(12) зато сдал уже и спеца и 3х проф -) Есть чем стены обклеить -)

   Глупый ответ

18 — 05.12.20 — 20:02

(0) я брал отпуск на неделю, проходил курс в уц3. На 5й день сдал. В 2006 году ушло 4 дня на подготовку, 1 на сдачу. Но экзамен сильно проще наверное был, сейчас такое не прокатит. И да, я до этого уже имел 3 спеца по 7.7 и поэтому легко сдал по 8ке. Сейчас не знаю, но тогда экзамен по платформе был компиляцией из 3х экзаменов по 7.7. Запилить там, что то на регистре бухгалтерии, на регистре накопления и на регистре расчетов.

   Глупый ответ

19 — 05.12.20 — 20:04

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

   Глупый ответ

20 — 05.12.20 — 20:14

1. Совет номер. Послать на йух франч, если в нем готовится не дают, то зачем он нужен? Я как во франч пришел, первые 6 месяцев, только сидел и готовился к экзаменам по 7.7. И все их сдал за 6 месяцев по 7.7. Потому потом и по 8ке все по сдавал за разумное время, потому что там все тоже самое, что и в 7.7(справочники, документы, регистры) и способы решения задач такие же, осталось только запросы подучить.

2. Совет номер 2. Не сдавать платформу, а сдавать «специалист по  конфигурированию торговых решений в системе программ «1С:Предприятие 8». Бухгалтерию никто не дорабатывает, ЗУП тоже. Поэтому серт по платформе в работе бесполезен.

3. Совет номер 3. Почти невозможно подготовиться к экзаменам при этом интенсивно работая на работе, надо выделить под это дело 100% рабочего времени и еще пару часиков свободного. Иначе подготовка к одному экзамену продлится бесконечно.

   polymorph

21 — 06.12.20 — 11:53

(8) а что за Белоусов? можно подробнее пожалуйста.

  

polymorph

22 — 06.12.20 — 12:25

Нашел

Понравилась статья? Поделить с друзьями:
  • Как подготовиться к экзаменам рекомендации психолога
  • Как подготовиться к творческому экзамену с нуля
  • Как подготовиться к экзаменам психологические приемы
  • Как подготовиться к творческому экзамену по рисунку
  • Как подготовиться к творческому экзамену по композиции