Материалы курса «Подготовка к Аттестации по Платформе 8.2» — Пакет стартовых задач
Первый пакет разобранных задач по Аттестации
Это восемь задач, с которых мы предлагаем Вам начать обучение в курсе.
Почему именно эти задачи и почему именно таким «пакетом»?
Потому что в них прорабатываются все основные приемы и подходы, используемые для решения аттестационных задач — те, что будем использовать дальше, при разборе следующих.
Хотелось бы, что Вы сначала проработали именно этот пакет, от начала до конца, и только затем переходили к следующим задачам — так многое будет более понятным и узнаваемым.
Порядок работы с этим блоком:
- Нужно скачать все задачи модуля
- Обязательно попытаться решить их самостоятельно
- Просмотреть решения задач от начала до конца
- Если после просмотра остаются вопросы — задать их комментариями к этой странице
Общий объем: 10 часов 25 минут видео, в пересчете на учебные часы составляет около 14 учебных часов…
Содержание блока
- Стартовая задача № 1 (оперативный учет)
2 часа 17 минут - Стартовая задача № 2 (оперативный учет)
1 час 03 минуты - Стартовая задача № 3 (бухгалтерский учет)
1 час 12 минут - Стартовая задача № 4 (бухгалтерский учет)
1 час 12 минут - Стартовая задача № 5 (расчетные задачи)
1 час 28 минут - Стартовая задача № 6 (расчетные задачи)
1 час 14 минут - Стартовая задача № 7 (бизнес-процессы)
1 час 05 минут - Стартовая задача № 8 (бизнес-процессы + упр.формы)
55 минут
Описания задач в PDF и видео-решения находятся в архиве Стартовый пакет из 8 задач: DevAtt-Start.rar на стартовой странице.
К сожалению, у Вас недостаточно прав для дальнейшего просмотра.
Если Вы приобрели курс, но еще не активировали токен — пожалуйста, активируйте доступ по инструкциям, высланным на Ваш email после покупки.
Если Вы не залогинены на сайте — залогиньтесь, вернитесь на эту страницу и обновите ее.
Если Вы залогинены, у Вас активирован токен доступа, но Вы все равно видите эту запись — напишите нам на e-mail поддержки.
Комментарии / обсуждение (1 349):
Комментарии закрыты

Добрый день!
Вопросы по задаче 1, обработке проведения документа «Продажа товаров»,
по списанию стоимости:
— Почему в запросе задействовано левое, а не внутреннее, соединение
таблицы ДокТч и регистра СтоимостьТоваров?
— Зачем в запросе ДокТЧ.Склад (в регистре СтоимостьТоваров склада нет)?
1. Нам же надо продать ВЕСЬ товар из документа, а не только тот который был в остатках.
2. Для формирования движений.
Советую еще раз пересмотреть видео и базу.
Спасибо. В вопросом 1 про левое соединение примерно понятно, — должна быть возможность продать товар, который еще не поступил или почему-то кончился. Так? Причем стоимость товара при такой продаже будет равна нулю (из запроса), ну и что.
Про 2-й вопрос. Пересмотрел еще раз видео и базу, в регистре Стоимость товаров склада не обнаружил. Наверное, запрос (в самом низу модуля, тот, который формирует движения по стоимости) возвращает склад просто так, тем более, что ошибки в этом нет.
1. Если товара нет в остатках, то просто соединение не покажет нам 0. И в итоге мы этот товар просто «проскочим» в контроле и расчете себестоимости.
2. Возможно ошибся, видимо копировал модуль от куда-то.
Павел, смотрю сейчас первый урок. Заметил что у вас работает intellisense + запросы синтаксически подсвечиваются.
Вы используете Снегопат или стоит что-то другое?
Снегопат + шаблоны. Видео про то что я использую будет Вам доступно очено-очень скоро. На странице со всеми материалами.
А использование снегопата не запрещено самой 1С? Просто интересно ) Помнится были споры
Уточните в 1С. Мне никто не запрещает :)
С интересом жду видео. Скачал демку, даже она привнесла приятные нотки в работу ) Не знаю есть ли необходимость в полной версии )
Добрый день, Павел.
В видео-уроке по задаче №1 в модуле проведения документа ПродажаТоваров, есть код:
…
Движения.ОстаткиТоваров.Очистить();
Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда
Движения.ОстаткиТоваров.Записать();
Иначе
МоментИтогов = МоментВремени();
КонецЕсли;
…
Таким образом, при оперативном проведении документа данные в регистр ОстаткиТоваров не записываются, т.к. перед записью мы их очистили. В поставляемой ИБ с решением задачи так и происходит.
Это ошибка или я не правильно понял логику работы?
Мы очистили движения документа, старые, чтобы они не влияли на получения оперативных итогов.
Добрый день. В 1-ой задаче сказано, что товары и услуги необходимо указывать в одной табличной части. При решении задачи нет разделения номенклатуры по видам и всегда делается движение по регистрам накопления «ОстаткиТоваров» и «СтоимостьТоваров», выполняется расчёт себестоимости. Будет ли такое решение считаться на экзамене ошибкой?
Будет считаться ошибкой.
Есть проблемы с реализацией этого условия?
Спасибо. Проблем с реализацией нет.
Есть к примеру в билете 2 задачи, с пересекающимися данными по бух и упр. (что-нибудь типа товары/остатки)
Надо ли пытаться сделать один универсальный запрос и один алгоритм(проверка остатков и т.д.), или можно разбить алгоритм проведения на 2 блока(упр. и бух.), со своими запросами и блоками кода)?
Изобретательность и искуство работы с запросами не будет оценено на сертификации. Но я не призываю Вас не делать правильно.
(перечитывая в 5-й раз) » Но я не призываю Вас не делать правильно.» (с)
Есть ощущение что сказано верно, но суть фразы постоянно ускользает :-) :-) :-)
Дело здесь в том, что данные (например, товары/остатки) по упр. учету могут существенно отличаться от данных бух. учета.
Связано, это хотя бы с тем, что в каркасной конфигурации существует документ «Операция».
Поэтому не правильно получать данные для бух. учета по тем же регистрам накопления.
Я добавлю… Не только для регистров бухгалтерии можно предусмотреть документ «Операция». Ну так, гипотетически…
Добрый день. Есть не проблемы, а вопросы. Как лучше сделать, в форме приходного документа не разрешать услуги, или в обработке проведения игнорировать записис услугой? Если второе, то будет ли снижена оценка за получения свойства номенклатуры «Услуга» через точку, или надо это делать запросом? Если запросом, то использование конструктора движений в приходных документах не проходит.
При проведении надо в запросе исключить услуги из контроля остатков и расчета себестоимости.
Павел, извините за назойливость, вопрос был про приходный документ, а ответ — про расходный (про исключение услуги из контроля остатков и расчета себестоимости). В форме приходного документа не нужно запрещать ввод услуги в табличную часть? В обработке проведения приходного документа для исключения услуги из движений допустимо получать признак услуги «через точку» (например, Номенклатура.Услуга) или за это будет снижена оценка, и надо пользоваться запросом?
Простите, проморгал…
Я не думаю что такой контроль вообще нужен. Но если нужен то правильнее реализовать его запросом к ТЧ документа с условием по признаку.
Здравствуйте.
Возник вопрос по задаче №2, точнее по задаче 1.4 из сборника задач для подготовки к экзамену (редакция 3, 2011 г.). Задача отличается от рассмотренной во втором примере наличием трех вместо двух методов списания себестоимости (FIFO, по средней или LIFO).
Можно ли пояснить, как необходимо доработать решение задачи в этом случае.
P.s. В результате поиска возможного решения остановилась на следующем: при смене учетной политики на метод списания «по средней» все существующие остатки со всех партий списываются данным документом, а все списанные товары приходуются этим же документом, но на «нулевую партию». На нее же записываются товары, поступающие во время действия метода списания «по средней». При переходе же на другой метод списания (FIFO или LIFO) имеющиеся остатки никак не изменяются, а вновь пришедшие товары сохраняются в разрезе своих партий.
Однако при таком решении при переходе на метод списания «по средней» безвозвратно теряется информация о партиях товаров. Верен ли данный способ решения или нужно, например, каким-либо образом использовать последовательность документов?
Заранее спасибо за ответ.
Исправляю опечатку в предыдущем комментарии: задача в сборнике 1.5
На сертификации именно такое решение и ожидается.
И не дай бог Вам подобный опыт применить в реальной жизни ;)
Не снижается ли оценка на экзамене за поцедуру проведения приходного документа, сделанную конструктором? Ведь такая процедура не учитывает возможное дублирование строк.
На это не обращают внимание.
Добрый день.
Вопрос 1: в оперативных задачах, для того что бы не учитывались собственные движения при перепроведении Вы всегда очищаете набор движений и записываете. В УТ 11 не записывают , а учитывают собственные движения в запросе, выбирая их из физической таблицы движений. Какой подход эффективнее и правильнее?
Вопрос 2: почему всегда перезаписываете движения в регистры, даже те которые не менялись? или такой подход только для быстроты решения задачи.
1. Физически запись произойдет только после окончания транзакции. То что мы очищаем набор записей по сути заставляет систему при чтении данных из регистра самостоятельно учитывать старые движения. Т.е. мы заставляем саму систему делать то вы говорите в УТ сделано.
2. Пример приведите в котором не надо писать движения.
1. Какой же подход эффективнее? очищаем и записываем или учитываем в запросе по движениям.
2. Пример сходу не приведу, но: если перепроводим документ и стоит признак «удалять движения только при отмене»
движения остаются. Можно проанализировать измененные движения и только их добавить/удалить. Хотя этот подход сложнее
в реализации.
2. снимается. это неправильно. это касается проверок — можно проверять только измененные движения.
1. Посчитайте трудозатраты и учтите ограниченное время экзамена.
Здравствуйте, у меня вопрос по второй задаче, для оперативного проведения документа мы записываем пустой набор, чтобы очистить записи. Можно ли вместо этого передавать в качестве параметра Граница, с видом границы не включая, или тогда что-то неверно будет? Что-то я запуталась…
В этом случае система не будет читать основные итоги (они уже рассчитаны), а будет производить временный расчет, что может быть на порядок дольше.
Спасибо
Добрый день. Вопрос по задаче 2.
Следуя правилу «не создавать то что в задаче не требуется (Цена)», разъясните, что в условии задачи 2 заставляет создавать регистр «Продажи»? Или это методология решений 1С?
А давайте я с Вами подискутирую как с Белоусовым. Это будет дискуссия №3, но я думаю это полезно для всех нас.
Итак,
Без регистра «Продажи» как Вы построите все отчеты?
ЗЫ: Я нацелен на долгий диалог. Абсолютно серьезно.
Без регистра «Продажи», запрос в отчете «Анализ продаж» можно сформировать с использованием вложенного запроса, в виде объединения 1)выборка из табличных частей проведенных документов ПродажаТоваров за период (номенклатура,0,0, выручка) и 2)выборка из рег.нак.ОстаткиТоваров (Номенклатура, Количество,Себестоимость,0). Поле «Прибыль» расчитывается вместе с группировкой результата.
Ага, можно. «Имитационное получение показателя» — 2 балла.
Вопрос: Любое ли списание товаров является продажей?
Бонус: Не запаримся ли мы группировать данные документа для вывода в отчет? :) И не придется ли нам отчет строить соединяя данные документа с реальной таблицей движений регистра? (а иначе как мы сможет отследить соответствие что оборот = продаже?).
День добрый.
Спасибо, учту.
Ответ: Зависит от рассматриваемой системы. В данной задаче списание товара организовано только при продаже документом ПродажаТоваров. По условию, не всякая продажа является списанием.
Ответ на бонус: Понимаю, что сбор данных таким способом менее эффективен, чем выборка оборотов из регистра. Трудоемкость этого варианта запроса, возможно, сравнима с запросом для движений документа ПродажаТовара. Если в задаче 2, выборка ТЧ из документа Продажа количественно (услуги не в счет) не будет соответствовать расходу по регистру ОстаткиТоваров, значит в системе ошибки (можно добавить поле «разница»).
В таком решении время создания регистра и движений по нему, пошло на создание запроса в отчете Продажи, потому-что основной учетный блок выделен как «учет остатков».
Если при проведении документа мы формировали временную таблицу ДокТЧ и нам требовалось добавить реквизиты документа, то мы задвали их параметрами, и потом устанавливали параметры запроса из ссылки документа. Например для реквизита «Склад» создавали во ВТ новое поле, объявляли его как &Склад и устанавливали параметр запроса «Склад» равным Ссылка.Склад, а не сразу заводили поле ВТ «Ссылка.Склад».
Т.е. наш вариант
«Выбрать Номенклатура, &Склад ИЗ Документ.РеализацияТовара.Товары КАК РеализацияТоваровТовары»
Альтернатива:
«Выбрать Номенклатура, Ссылка.Склад ИЗ Документ.РеализацияТовара.Товары КАК РеализацияТоваровТовары»
Это принципиально?
Во втором варианте система построит запрос с левым соединением к таблице документа.
Поясните плз, что Вы имеете ввиду под «построит запрос с левым соединением к таблице документа». Дайте более развёрнутое пояснение?
И в продолжении темы — а что несёт меньшие «накладные расходы» для системы — выборка
Выбрать
РеализацияТоваровТовары .Номенклатура,
РеализацияТоваровТовары .Ссылка.Склад Как Склад
ИЗ Документ.РеализацияТовара.Товары КАК РеализацияТоваровТовары
где Ссылка = &Ссылка
или
Выбрать
РеализацияТоваровТовары .Номенклатура,
&Склад Как Склад
ИЗ Документ.РеализацияТовара.Товары КАК РеализацияТоваровТовары
где Ссылка = &Ссылка
ВЫБРАТЬ
ДокТЧ.Номенклатура
ИЗ
Документ.Название.ТЧ.
Построит запрос к таблице «Документ.Название.ТЧ»
ВЫБРАТЬ
ДокТЧ.Номенклатура,
ДокТЧ.Ссылка.Дата
ИЗ
Документ.Название.ТЧ.
Построит запрос к таблице «Документ.Название.ТЧ» и к таблице «Документ.Название»
ВЫБРАТЬ
ДокТЧ.Номенклатура,
ДокТЧ.Ссылка.Дата,
ДокТЧ.Номенклатура.Код
ИЗ
Документ.Название.ТЧ.
Построит запрос к таблице «Документ.Название.ТЧ», «Документ.Название» и «Справочник.Номенклатура»
При этом система будет строить запросы левым соединением. Чем больше точек в запросе, тем больше таблиц используются при построении запроса и больше соединений.
В продолжении темы, надеюсь теперь очевидно что второй вариант более легче.
Еще вопрос по 5 задаче. Когда делается запрос для расчета в общем модуле. Для расчета ДопНачислений (0:45) делается соединение по номеру строки с ФИЗИЧЕСКОЙ ТАБЛИЦЕЙ ДопНачисление виртуальных таблиц ДопНачисление по основной и дополнительной базам. А почему в первом запросе пакета по расчету ОсновныхНачислений не используете физическую таблицу ОсновныеНачисления, а используете связь между собой только виртуальных таблиц ДанныхГрафика и ФПД?
Когда я 2 года назад был на семинаре в 3 учебном центре (и заочно решал задачи), то преподаватель ЗП Больсунов жестко требовал от нас использования в таких запросах физической таблицы, что ОсновныеНачисления, что ДопНачисления. Неиспользование этой таблицы в таком запросе, как я понял, считал грубой ошибкой.
Кто прав?
В таблице «ДанныеГрафика» гарантированно содержатся все строки реальной таблицы. При ее использовании соединяться еще с реальной таблицей неправильно.
В 5 задаче в Общем модуле для расчета зарплаты вы поставили галочку «Вызов сервера», но не поставили «Привилегированный». Но ведь она позволяет рассчитывать зарплату расчетчикам с ограниченными правами доступа. Или на сертификации это не существенно?
1. Настройка прав доступа не тема сертификации.
2. У документа «Ввод начислений» установлен флаг «Привилегированный режим при проведении». Так что нет необходимости в указанном флажке.
/У документа «Ввод начислений» установлен флаг «Привилегированный режим при проведении»./
А этот флаг распространяется на модуль объекта документа или на другие объекты (в частности Общий расчетный модуль), на которые ссылается документ из модуля?
На транзакцию проведения…
Павел, сорри, если вопрос не совсем по теме, на вашем форуме выложен состав актуальных билетов, используемых на сертификации.
Как я понимаю, этот перечень составлен на основе опыта сдающих сертификацию, но доподлинно не известно будут ли именно эти задачи на экзамене? Достаточно ли для подготовки прорешать только эти (предполагаемые) актуальные билеты или все-таки лучше прорешать все задачи из сборника?
:) Я не могу давать гарантий за действия фирмы 1С. Они могут все поменять в любой момент.
ещё вопрос:
зачем в такой конструкции очистка, ведь при выполнении «загрузить()» предыдущие данные очищаются?
<code>
Движения.ОстаткиТоваров.Записывать = Истина;
Движения.ОстаткиТоваров.БлокироватьДляИзменения = Истина;
Движения.ОстаткиТоваров.Очистить();
Движения.ОстаткиТоваров.Загрузить(РезультатЗапроса.Выгрузить());
Движения.Записать();
</code>
уточню: этот кусок кода записывает движения ещё до получения остатков. например в первой задаче.
Да, в этом случае нет необходимости в очистке.
день добрый.
поскажите какая конструкция предпочтительнее:
<code>
выборка=запрос.выполнить().выбрать;
если выборка.следующий() тогда
значение=выборка.значение;
</code>
или
<code>
значение=запрос.выполнить().выгрузить()[0].значение;
</code>
при условии, что запрос возвращает только одну запись
Первое предпочтительнее. Так как ТЗ (то что «Выгрузить()» возвращает) это тяжелая штука в отличие от выборки.
А разве Выборка «легче» чем ТаблицаЗначений?
Ведь перебор объектной модели всегда тяжелее чем «прямое» обращение в массиву (к конкретной строке табличной части)?
Естественно легче, тип значения «Выборка» специально предназначен для построчного перебора данных, оптимизирован для порционного получения данных из базы. ТЗ будет есть память целиком получая при выгрузке данные из запроса.
Здравствуйте!
Не могу понять что сделал в четвертой задаче не так в документе «Курсовая разница». Сформировал запрос
<code>
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| УправленческийОстатки.Счет,
| УправленческийОстатки.Субконто1,
| УправленческийОстатки.Субконто2,
| УправленческийОстатки.Валюта,
| УправленческийОстатки.СуммаОстаток,
| УправленческийОстатки.СуммаВалОстаток * ЕСТЬNULL(КурсыВалютСрезПоследних.Курс, 1) — УправленческийОстатки.СуммаОстаток КАК Отклонение,
| УправленческийОстатки.Счет.Вид КАК Вид,
| УправленческийОстатки.Счет.ВидыСубконто.(
| ВидСубконто КАК ВидСубконто,
| НомерСтроки КАК НомерСтроки,
| ТолькоОбороты КАК ТолькоОбороты
| ) КАК ВидыСубконто
|ИЗ
| РегистрБухгалтерии.Управленческий.Остатки(&МоментВремени, Счет.Валютный, , ) КАК УправленческийОстатки
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних(&МоментВремени, ) КАК КурсыВалютСрезПоследних
| ПО УправленческийОстатки.Валюта = КурсыВалютСрезПоследних.Валюта
|ГДЕ
| УправленческийОстатки.СуммаВалОстаток * ЕСТЬNULL(КурсыВалютСрезПоследних.Курс, 1) — УправленческийОстатки.СуммаОстаток <> 0»;
</code>
Когда доходит до строк
<code>
Для каждого Стр ИЗ Выборка.ВидыСубконто Цикл
Субконто[Стр.ВидСубконто] = Выборка[«Субконто»+Выборка.НомерСтроки];
КонецЦикла;
</code>
Выходит ошибка «Итератор для значения не определен». Когда смотрю в режиме отладки чему равен Выборка.ВидыСубконто показывает что равно РезультатЗапроса.
Так и выбирайте как результат запроса.
Выборку сделал из Выборка.ВидыСубконто, все получилось, только не понял почему когда Вы решали сразу получали данные в цикле из Выборка.ВидыСубконто, а мне пришлось дополнительно писать ВыборкаСубконто = Выборка.ВидыСубконто.Выбрать(), и после этого обходить данные выборки.
Добрый день,
не совсем понятен принцип очистки движений документа перед проведением.
В одном месте используется только метод «Очистить()» набора движений, в другом случае только метод «Записать()» (без очистки). И наконец, встречается комбинация методов «Очистить()» и потом «Записать()». Не могли бы вы прояснить этот момент?
В видео этот вопрос разобран.
Если использовать управляемые формы и при этом не отображать и не читать движения документа, то принудительно очищать движения не нужно. Если в УФ Вы читаете движения (к примеру используете команду «перейти») то старые движения читаются и без их удаления у нас будет постоянно дублироваться движения при нажатии на кнопку «Провести» не закрывая форму.
если используется обычная форма, то там движения однозначно читаются при открытии формы и там чистить движения нужно обязательно.
Все вышеперечисленное относится к документам со свойством «Очищать при отмене проведения».
т.е. зависимость от вида формы, а не клиента? бывает ведь и уф в толстом клиенте…
Зависит в первую очередь от того будут прочитаны движения при открытии формы или в какой либо момент существования формы или нет. Проверить работу в разных режимах я думаю Вы можете легко сами.
Во второй задаче метод списания Вы получаете в одном запросе с партиями. Будет ли неошибочным при сдаче получать его отдельным запросом?
На сертификации такие мелочи особой роли не играют, но в реальной эксплуатации системы я рекомендую все что возможно получать как можно меньшим числом запросов.
а конструкцией вида
РегистрыСведений.УчетнаяПолитика.ПолучитьПоследнее(МоментВремени()).МетодСписания
?
Это ничем от запроса в лучшую сторону не отличается. Скорее наоборот — это неуправляемый запрос.
неуправляемый, значит выбирающий, по сути, все реквизиты по регистру?
но ведь там единственный реквизит. Или у «ПолучитьПоследнее» есть еще отрицательные последствия?
По сути запросом то прозрачнее, Вы не только поля конкретные указываете, но и возможности отборов богаче. Что использовать решать Вам. Главное не в цикле это все делать :)
Здравствуйте!
На видео используется очень интересный «синтаксис-помощник», как его можно «подключить»?
Приветствую. У нас есть видео на эту тему в первом потоке, я попрошу чтобы к нему был доступ и у второго.
присоединяюсь к вопросу. когда можно будет узнать подробности?
Ждем :)
Тоже очень любопытно.
Спасибо!!!!
Здравствуйте!
Посмотрела на данный момент первые две задачи. Вопрос:
В настройках регистра накопления есть Разрешить разделение итогов. Я читала, что если использовать новую методику проведения, то эта галочка должна быть отмечена. В видео про эту настройку ничего не услышала (либо невнимательно смотрела). Если можно, поясните этот момент.
Разделение итогов влияет на скорость параллельного проведения. Приведу пример…
Имеем регистр накопления остатков |Номенклатура|Количество|. При формировании движения «Приход», движения формируются и обновляется таблица итогов. В момент обновления таблицы итогов она, естественно блокируется. Если одновременно мы покупаем двумя разными документами один и тот же товар то документы при проведении ожидают снятие блокировки с таблицы итогов, то есть выстраиваются в очередь. Но ведь при покупки товаров нет никаких причин параллельно ожидать окончания обновления итогов другого процесса. И именно для такого случая можно разрешить разделение итогов. Тогда первый документ будет обновлять итогов таблице итогов, а второй создаст еще одну запись в таблице с итогами (система будет работать с несколькими строками итогов как с одной, то есть группирование и сворачивание итогов не наша головная боль).
Но вот при продаже товара несмотря на все разделения итогов, мы должны установить блокировку записей до окончания проведения, нам важно не допустить «грязное чтение», то есть чтение данных которые в этот момент меняются.
Павел, то есть либо использовать объект БлокировкаДанных, либо св-во движений БлокироватьДляИзменения=Истина, верно?
Или всё же если включен режим разделения итогов, то и строку
Движения.<>.БлокироватьДляИзменения=Истина; // что временно снимет галочку разделения итогов, как где-то обсуждалось на Вашем форуме
использовать и
Блокировка = Новый БлокировкаДанных;
Спасибо!!!
Блокировка и разделение итогов не связаны.
В первых видео подробно рассказано когда использовать свойство набора записей «БлокироватьДляИзменения», а когда объект «БлокировкаДанных».
«БлокироватьДляИзменения» никаких галочек временно не снимает.
Добрый день,
Помогите плз :-)
Вижу:
К сожалению, у Вас недостаточно прав для просмотра этой записи. Если Вы еще не залогинены на сайте — залогиньтесь.
Если не активировали токен — посмотрите видео-инструкцию (видео N5)
Если вы залогинены, у Вас активирован токен доступа, но вы все равно видите эту запись — напишите нам на e-mail поддержки.
Как я понимаю, потому что из-за имеющегося у меня доступа к материалам первой МГ, регистрацию ко второй мне позволило сделать только с 19.06 и сегодняшний день «выпал» из доступа.
Заранее благодарен, Андрей
…
(текст комментария доступен только участникам Мастер-группы)
На сайте залогинелся , токен доступа активировал (с 18.06.2012), но никак не могу понять, где можно скачать файлы пакета «ВСЁ И СРАЗУ».
Я читал, что первые материалы будут выложены ориентировочно 13.06.2012, но я полагал, что опция «ВСЁ И СРАЗУ» даст возможность уже сейчас получить все материалы.
…
(текст комментария доступен только участникам Мастер-группы)
Здравствуйте!
Я активировал токен 18-ым июнем, хотел скачать материалы, а пишется информация, что материалы 2-ого потока будут доступны с 13 июня, а материалы 1-ого потока недоступны.
Выходит мы будем заниматься по другим видео-урокам?
…
(текст комментария доступен только участникам Мастер-группы)
Павел, здравствуйте
По задаче №3 вопрос.
Документ «Расходная накладная» проводка
Дт «Покупатели» — Kт «Прибыли и убытки» на сумму в продажных ценах.
В описанном решении сумма в проводку попадает не итоговая по документу, а максимальная.
(если в документе две строки, 1-я с суммой 100 и 2-я с суммой 200, то в проводку должно попадать 300, а попадает только 200)
Спасибо, поправлю.
Добрый день! Я тут бился с 4-ой задачей. И при самостоятнельном решении вдруг обнаружил, что в задаче требуется изобразить расходную накладую и движение по проводкам. А мы этого не делаали. Или не надо было этого делать, или руки не дошли?)))
Поясните, что означает «изобразить расходную и движения по проводкам»? Я наверно что то упустил.
Скажите, пожалуйста в каком каталоге или по какому пути можно найти на диске ИТС (Партнёрском или Проф.) Демонстрационную конфигурацию Управляемое приложение с методическими примерами использования новых возможностей платформы 8.2.
Спасибо!
D:1CItsEXEDemo82
Добрый день. Вопрос по задаче №1. При расчете себестоимости набор записей регистра СтоимостьТоваров очищается как при оперативном проведении, так и при неоперативном. Стоит ли это делать при неоперативном проведении? Ведь момент времени, на который рассчитываются остатки, не включает движений проводимого документа.
Записывать очищенный набор не надо при неоперативном проведении, а очищать не помешает. Где-то тут рядом мы это обсуждали.
Павел, здравствуйте
Задачи оперативного учета
В запросах в модуле проведения расходных документов мы накладываем условия на виртуальные таблицы регистров такие как (Номенклатура в (ДокТЧ.Номенклатура из ДокТЧ КАК ДокТЧ).
Для чего мы это делаем, разве само по себе левое соединение ДокТЧ/остатки не даст такой же результат?
Нет не даст. Соединение будет накладывать отбор после расчета виртуальной таблицы. А нам нужно условие установить для целей оптимизации этого самого расчета. То есть результат будет одинаковый, а затраты на его получение разные.
спасибо, понятно
Добрый день, Павел! Вернулся к Вашей задачи и… Нет может я что-то не понял или не смог. Если в документе продажа товара есть графа или полде стоимость (проданного товаоа) , то что, где надо дополнить, чтобы РН Стоимость товаров цеплял расход этой самой стоимости. Спасибо.
В документе «Продажа» есть выручка, а себестоимость надо рассчитывать.
Или я не понял Вас. В документе «Продажа» не может вводится себестоимость списания, ее рассчитывать надо.
Павел, во второй задаче первый отчет предполагает вывод еще количества. Подскажите, как оптимальней, добавить ресурс в оборотный регистр продажи, или делать отчет по двум регистрам, в этом случае в регистре продажи можно использовать только один ресурс — выручка, а себестоимость и количество брать из другого регистра?
Я отвечал на подобный вопрос: /dev-attprep-materials/comment-page-1/#comment-36465
Здравствуйте! Стартовая задача 1
При попытке создания для номенклатуры (например вилка)
еще одного производителя — (например завод 11) и добавлении его в характеристику
товара получаем сообщение об ошибке
«Запись с такими ключевыми полями существует
ХарактеристикиНоменклатуры:Вилка, Производитель (Регистр сведений:
Характеристики номенклатуры: Номер строки 1)»
Но ведь это разумно товар может производиться на разных
заводах ;-)
Проверял и на учебной базе из поставки , та же ошибка . Как исправить ?
Игорь
Характеристики описывают конкретный один товар, он не может иметь разные свойства по одной характеристики, e.g.: товар не может быть и белым и красным одновременно, тоже и с поставщиком. Мы описываем не варианты одного товара, а именно один товар.
Есть ли разница в производительности при проверке на NULL способами
Количество ЕСТЬ NULL
и
ЕстьNULL (Количество, 0)=0
Нет. По сути ЕстьNULL это выражение ВЫБОР КОГДА Поле Есть NULL ТОГДА 0 КОНЕЦ.
Павел, во второй задаче для контроля отрицательных остатков правильно было бы использовать созданный регистр для учета партий или же создавать отдельный регистр с измерением «Номенклатура» и ресурсом «Количество»?
Я бы использовал существующий регистр, но ваша фраза на 28-29 минутах подставил под сомнения мои соображения.
По новой методике проведения идеальным алгоритмом считается такой:
1. Проверяем быстро можно провести документ или нет, с минимальными блокировками.
2. Делаем все остальное.
Вывод: Отдельный регистр, с избыточной информацией об остатках товаров вписывается в эту концепцию. Сначала проверили можем ли продать товар, затем списываем партии.
Здравствуйте! В первой задачи в условии было написано, что в «Расходной накладной» могут также быть указаны услуги, например, доставка. По-моему контроль остатков для услуг вести нет необходимости. В решении данное условие что-то не заметил. Будет ли являться ошибкой невыполнение подобного вида условий на аттестации (решение просматривал на видео-файле до «перезалития»)
Естественно будет.
Я не думаю что реализация этого требования вызывает вопросы. Давайте посмотрим Ваш вариант решения ;)
Да я просто уточнить хотел:)
Добрый день.
Вопрос по второй задаче. Я думаю, очень было бы не лишним в запросе проверять на NULL присоединяемые поля из таблицы РегистрНакопления.ОстаткиТоваров.Остатки. И, если это действительно ошибка, насколько критично к ней отнеслись бы на экзамене?
Приводить значения к числу 0 нужно только те поля которые используются при сравнениях.
К примеру в регистре есть КоличествоОствток и СтоимостьОстаток. На КоличествоОстаток мы проверяем, его нужно приводить к числу, а СтоимостьОстаток мы используем уже после проверки => если проверка прошла там точно не NULL, лишний раз проверка на тип значения NULL негативно сказывается на производительности.
Собственно, о КоличествоОстаток я и спрашивал. Например, если пользователь попытается отгрузить товар, которого у него совсем нет, то получим ошибку времени исполнения. Ведь в этом случае сравнивается значение числового типа и NULL. К тому же Вы не ответили, как на подобную ситуацию среагировали бы на экзамене.
Отвечаю. Есть требования к решению задач, они опубликованы на сайте 1С, там сказано, что конфигурация должна работать и не вываливаться по ошибке. По этому необходимо составить код так чтобы ошибок не было. В том числе пр необходимости нужно приводить NULL к числу или же проверять перед сравнением с числом какой тип имеет поле NULL или число. В том числе нужно проверять значение переменных при делении на значение 0, так как при делении на ноль система вывалится. И еще много примитивных проверок.
В требованиях — отсутствие проверки на NULL -1 балл.
Тут без вариантов — если отбирается поле из левого соединения, то надо делать проверку. Раз мы его выбрали, значит оно может как-то понадобиться. Думаю, что тут даже нет повода для аппеляции.
Минус 1 балл — это в случае именно использования поля, если в условии мы не доходим до использования полей то писать функцию необязательно. Я Вас не уговариваю, если напишите то ничего страшного на сертификации не будет. Но имейте в виду проверка на этот тип значения для системы дело не элементарное, на сложных алгоритмах я бы рекомендовал использовать такие проверки по минимуму.
Павел, здравствуйте!
В требованиях к кандидатам на аттестацию есть описание типичных ошибок. Одна из которых звучит так – «Использование итоговой информации регистров, полученной в форме документа, при его проведении» и стоит она 2 балла. Поясните, пожалуйста, что тут имеется в виду, ведь, для расчета остатков к этой информации требуется обратиться.
Тут имеется в виду, что, если Вы получили информацию об остатках в момент работы пользователя с формой и ее же используете в момент проведения, то это не есть хорошо, с момента работы пользователя с формой могло пройти достаточно времени, чтобы остатки изменились.
При проведении нужно читать остатки отдельно.
Здравстуйте.
Такой вопрос по второй задаче (партионный учет).
А если допустим есть еще метод списания «По средней». Надо ли при изменении учетной политики, допустим было FIFO стало ПоСредней, документом «Учетная политика» обнулять партии. Т.е. делать расход по партиям и приход без партий.
И как быть при обратном изменении «ПоСредней-FIFO»
В случае когда в задаче используется и партионный и не партионный учет необходимо предусмотреть документ регистрирующий смену этих режимов.
При переходе с не партионного учета на учет партий товаров необходимо все остатки перевести на первую партию, признаком партии станет этот документ.
При обратном переходе необходимо у всех остатков сбросить признак партии (установить пустую партию).
Возможно решение с двумя регистрами накопления (один с партиями, один без), но в этом случае возникают проблемы при непоследовательном вводе документов и восстановлении последовательностей.
Подскажите, а в чем минус такого подхода:
При переходе с «ПоСредней» на «FIFO/LIFO» не заполнять партии, т.е. так и оставить пустыми. При этом новые Приходные регистрировать как партии. В запросе будет сортировка по МоментуВремени, у пустой партии будет NULL — самый низкий приоритет при сортировке. Т.е. при FIFO — пустая партия будет списываться первой, при LIFO — последней.
Я решал задачу таким образом — на мой взгляд пустая партия списывалась корректно.
Принципиальной разницы не вижу, но сам не люблю при сортировке обращаться к пустым ссылкам через точку (моментВремени).
На скольких компьютерах можно просматривать этот курс?
…
(текст комментария доступен только участникам Мастер-группы)
Добрый день, Павел!
Вопрос по строке кода, очищающего набор записей регистра перед проведением. Если я правильно понял, то речь идет о том, что поведение механизма проведения отличается при запуске в толстом клиенте обычного и управляемого приложения. Такой строкой мы обеспечиваем универсальность. Не будет ли снижена оценка на экзамене за это, если в задании не указано, что требуется обеспечить работу в разных режимах? Ведь, такая строчка будет снижать производительность.
Производительность не снизится, мы ведь не пишем еще данные в регистр, просто очищаем набор записей, физически запись будет ниже.
Про оценку могу сказать: нарываться конечно не стоит, если не уверены, то не пишите, но я люблю апелляции писать :)
а зачем мы собственно решаем задачу, которой нет в задании? именно об этом и говорилось в 1ом видео, что не нужно тратить время на решение задач, о которых ни слова в задании. такой же вопрос у меня возник, когда мы строили отчет по счету «товары». зачем было учитывать, что пользователь может ввести свои количественные счета?
У меня не только цель решить задачу…
На сертификации можете не использовать подобный прием. Главное команды в форму не добавляйте которые с движениями связаны ;)
Павел добрый день. Скажите пожалуйста насколько важно реализовывать логику блокировок при решении задач для 1С Специалиста, если этот момент вообще опустить? ведь в задании про него не чего не написано.
Добрый день.
В требованиях к экзамену это оговорено: «В решении должен использоваться управляемый режим работы с транзакционными блокировками».
Еще раз очень советую ознакомится с требованиями: http://www.1c.ru/rus/partners/training/files/ATT82PL.zip
Добрый день.
вопрос по первой задаче.
при решении задачи касательно себестоимости перед чтением данных о себестоимости происходит безусловная очистка регистра:
<code>
Движения.СтоимостьТоваров.Очистить();
Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда
Движения.СтоимостьТоваров.Записать();
Иначе
МоментИтогов = МоментВремени();
КонецЕсли;
</code>
но запись пустого набора осуществляется только при Оперативном проведении.
В том случае, если документ со старой датой будут перепроводить с изменением времени или даты в большую сторону — движения этого документа будут участвовать в расчете себестоимости.
Обращать ли на такие случаи внимание, или это уж слишком для решения аттестационной задачи?
Этот случай я не учел при решении. Хм… :)
Не касательно к сертификации: руки надо отрывать если пользователи меняют дату проведенного документа.
К сертификации: при вводе тестовых данных и не видел что такой случай обыгрывается, но кто знает что будет на очередной сертификации.
К производительности: Не хорошо лишний раз писать данные в таблицы БД, оптимально — запретить измерение даты проведенного документа.
> Не касательно к сертификации: руки надо отрывать если пользователи меняют дату проведенного документа.
Хм-м. Павел, но ведь при оперативном проведении уже проведенного документа дата автоматически будет перенесена платформой вперед, на оперативную отметку времени. И тут уже пользователь не при чем…
Оперативное проведение (перепроведение) это штатный механизм. Хотя к нему есть много вопросов. Не путайте с перепроведением задним числом (и не дай бог изменением даты документа).
В задаче я признал свой недочет. Надеюсь этот пример пойдет на пользу :)
Здравствуйте!
Возможно, забегаю вперед.
Первая задача, подтема «правильное определение показателей». В качестве примера — отчет, в нем — остаток, резерв, свободный остаток. Свободный остаток предложено сделать расчетным.
Но разве при контроле свободного остатка при проведении Реализации не вылезет необходимость блокировки 2-х регистров — Остатков и Резервов — именно для того, чтобы вычислить Свободный? Да и при проведении документа резерва — тоже самое.
Причем, новую методику списания тоже не применить.
Я бы сделал регистры остатков — Свободный и Резерв, Общий как расчетный. При резервировании контролировал только Свободный, при реализации — Свободный, по необходимости Резерв. Все по новой методике. Блокировки через свойство БлокироватьДляИзменения..
В чем я не прав?
Вы абсолютно правы. Если разбирать решение с контролем свободного остатка при проведении Расходной, то полностью Вас поддержку.
Если же дело только в отчете, то рассчитать показатель мы легко можем не создавая отдельный регистр.
Спасибо за вопрос!
Пока просмотрела первую подзадачу в первой задаче. Все очень нравится! Спасибо Вам за такой хороший и нужный курс!!!
Не нравиться только проблема с отстающим видео… Решите пожалуйста это как-нибудь.
…
(текст комментария доступен только участникам Мастер-группы)
Получила рег. ключ на другой компьютер, действительно все хорошо, на почту написала письмо, советы не помогли, на ноуте все равно жутко отстает видео от звука=( Просто хотела чтобы была возможность заниматься не только дома… Ну да ладно, буду тогда на домашнем смотреть. А у меня такой вопрос назрел: сколько ключей можно получить (также как и на быстром старте три?)
…
(текст комментария доступен только участникам Мастер-группы)
Да, я уже поняла что с буком проблемы, просто кодеки удалила, комп перезагрузила
Установила TSCC , перезагрузила, но не помогло к сожалению.
Надо форматировать и ставить ось заново… Давно уже пора, просто там для учебы уже все программы настроены, жалко… Поэтому решила пока заниматься на домашнем, он и на быстром старте отлично работал=) Спасибо
У меня точно такая же проблема. Получила привязку на ноутбук. Видео очень сильно отстает от звука. Кодеки удаляла и переустанавливала. Ничего не помогло. Видимо, одну привязку потеряла. :(
…
(текст комментария доступен только участникам Мастер-группы)
каким образом используется такая интересная контекстная подсказка?
Есть встроенная контекстная подсказка в 1С, есть шаблоны, включаются через «Сервис-настройки-модули» «Автозамена».
Есть сторонние утилиты вроде «Снегопат».
Если интересно, шаблоны которыми я пользуюсь могу выложить.
интересно, выложите.
Самые свежие тут: http://clck.ru/0z1_9
Описание тут: http://chistov.spb.ru/publ/2-1-0-3
В продолжение вопроса об оформлении.
Скажите, как настроено цветовое выделение для ключевых слов языка запросов внутри текстовых констант (Запрос.Текст = «…») ? Это средствами 1С или сторонняя примочка?
Это «сторонняя примочка», надеюсь разработчики платформы смогут ее реализовать… Ну мне хочется в это верить :)
интересно и спасибо заранее
Простите, если пишу не туда, но постоянно отстает видео=( Приходится вручную искать нужный видео фрагмент
…
(текст комментария доступен только участникам Мастер-группы)
Такая же ситуация. Видео значительно отстает от звука.
Приходится в цикле повторять комбинацию «PAUSE — PLAY».
В принципе не сильно мешает, но приходится больше времени
затрачивать на просмотр.
На почту о проблеме написал.
А перезалитое видео с решениями 1-4 задач скачать не удается, т.к.
«у ВАС недостаточно прав»
…
(текст комментария доступен только участникам Мастер-группы)
1. Я тоже теперь на кодеки грешу
2. Выслал скриншот на почту support@nasf.ru
…
(текст комментария доступен только участникам Мастер-группы)
На той странице (с перезаписанными решениями) наши токены не привязаны
«К сожалению, у Вас недостаточно прав для просмотра этой записи. Если Вы еще не залогинены на сайте — залогиньтесь.»
…
(текст комментария доступен только участникам Мастер-группы)
Фарит, здравствуйте! В качестве опыта. 2,5 дня сражался с плеером. Как хороший маяк: то потухнет, то погаснет. Помог Старый флотский метод борьбе пожаром на корабле, когда он (пожар) ликвидируется методом затопления последнего (т.е. корабля). На плеер может влиять всё, что угодно, аськи, скайпы, огрызки программ, не добитые вирусы и антивирусы. ПРОВЕРЕНО. Поэтому отформатировал, накатил чистый образ и…. ура, заработало!!! Стоило только установить (не включая) веб-камеру – привет курсам! Снес камеру, опять заработало. Так что, есть смысл заранее рекомендовать слушателям готовить, т.е. максимально чистить комп. Единственное, что в плеере не удобно, нет перемотки назад с помощью стрелки влево. Когда хочется повторить крылатую фразу Павла, а там их много, то мышкой передвигая бегунок, откатываешься слишком далеко назад.
…
(текст комментария доступен только участникам Мастер-группы)
В первой задаче говорится про текст задачи, что он поставляется вместе с материалами курса, но я скачала только задачи. Где можно взять текст задачи???
Тут: /2012/04/11/config-for-tasks/
Не нашел, где можно скачать конфигурацию (-ции) «Подготовка к сертификации. Занятие …». Из видео я понял, что где-то надо ее взять…
…
(текст комментария доступен только участникам Мастер-группы)
/2012/04/11/config-for-tasks/
Стану первым. :)
Павел, файл с текстом задания можно где-то дополнительно взять? Это которое на 15-ой минуте. Немного не видно справа текст, в принципе понято, но…
И ещё вопрос, у Вас какой-то особенный «подсказчик кода», или это какая-то настройка и свои шаблоны? Можно посмотреть? :)
(забыл как правильно называется окно появляющееся после точки :)
Контекстная подсказка называется :D
Базы с текстом заданий выложили: /2012/04/11/config-for-tasks/
Про контекстную подсказку я тут уже писал. Шаблоны опубликовал. (http://goo.gl/cB0FC)