Материалы курса «Подготовка к Аттестации по Платформе 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. Hunter1r

    Добрый день!
    Вопрос по стартовой задаче № 1
    Вопрос касается списывания себестоимости. В запросе связываются таблицы ДокТЧ и СтоимостОстатки. В параметре вирт. таблицы СтоимостьОстатки накладывается отбор на Номенклатуру. Но мы и так сделали связь по номенклатуре. Не является ли это условие излишним?

    Запрос.Текст =
        "ВЫБРАТЬ
        |   ДокТЧ.Номенклатура,
        |   ДокТЧ.Количество,
        |   ДокТЧ.Склад,
        |   ДокТЧ.Период,
        |   ДокТЧ.ВидДвижения,
        |   ВЫБОР
        |       КОГДА ЕСТЬNULL(СтоимостьТоваровОстатки.КоличествоОстаток, 0) = 0
        |           ТОГДА 0
        |       ИНАЧЕ ВЫБОР
        |               КОГДА ДокТЧ.Количество = ЕСТЬNULL(СтоимостьТоваровОстатки.КоличествоОстаток, 0)
        |                   ТОГДА СтоимостьТоваровОстатки.СтоимостьОстаток
        |               ИНАЧЕ ДокТЧ.Количество / СтоимостьТоваровОстатки.КоличествоОстаток * СтоимостьТоваровОстатки.СтоимостьОстаток
        |           КОНЕЦ
        |   КОНЕЦ КАК Стоимость
        |ИЗ
        |   ДокТЧ КАК ДокТЧ
        |       ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.СтоимостьТоваров.Остатки(
        |               &МоментИтогов,
        |               Номенклатура В
        |                   (ВЫБРАТЬ
        |                       ДокТЧ.Номенклатура
        |                   ИЗ
        |                       ДокТЧ КАК ДокТЧ)) КАК СтоимостьТоваровОстатки
        |       ПО ДокТЧ.Номенклатура = СтоимостьТоваровОстатки.Номенклатура";

    2. При проведении документов продажи товаров нужно ли делать проверку на заполненность табличной части? Если такой проверки нет будет ли это недочетом/ошибкой?

    Спасибо!

    • GROOVY

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

  2. kurpyaev1

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

    ///////////////////

    ВЫБРАТЬ
    ДанныеГрафика.НомерСтроки,
    ДанныеГрафика.Параметр,
    ЕСТЬNULL(ДанныеГрафика.ПризнакФактическийПериодДействия, 0) КАК ФактДней,
    ЕСТЬNULL(ДанныеГрафика.ПризнакПериодДействия, 0) КАК НормаДней,
    ЕСТЬNULL(ТЗ_БАЗА.ОтработаноДнейБаза, 1) КАК ОтработаноДнейБаза,
    ЕСТЬNULL(ТЗ_БАЗА.СуммаБаза, 0) КАК СуммаБаза,
    ДанныеГрафика.ВидРасчета.СпособРасчета КАК СпособРасчета
    ИЗ
    РегистрРасчета.ОсновныеНачислениея.ДанныеГрафика(Регистратор = &Регистратор) КАК ДанныеГрафика
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ОсновныеНачислениея.БазаОсновныеНачислениея(&Измерения, &Измерения, , Регистратор = &Регистратор) КАК ТЗ_БАЗА
    ПО ДанныеГрафика.НомерСтроки = ТЗ_БАЗА.НомерСтроки
    ;

    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    ДопНачисления.НомерСтроки,
    0 КАК ФактДней,
    0 КАК НормаДней,
    ДопНачисления.Параметр,
    ЕСТЬNULL(ДопНачисленияБазаДопНачисления.СуммаБаза, 0) + ЕСТЬNULL(ДопНачисленияБазаОсновныеНачислениея.СуммаБаза, 0) КАК СуммаБаза,
    ЕСТЬNULL(ДопНачисленияБазаОсновныеНачислениея.ОтработаноДнейБаза, 0) КАК ОтработаноДней,
    ДопНачисления.ВидРасчета.СпособРасчета
    ИЗ
    РегистрРасчета.ДопНачисления КАК ДопНачисления
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрРасчета.ДопНачисления.БазаДопНачисления(&Измерения, &Измерения, , Регистратор = &Регистратор) КАК ДопНачисленияБазаДопНачисления
    ПО ДопНачисления.НомерСтроки = ДопНачисленияБазаДопНачисления.НомерСтроки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрРасчета.ДопНачисления.БазаОсновныеНачислениея(&Измерения, &Измерения, , Регистратор = &Регистратор) КАК ДопНачисленияБазаОсновныеНачислениея
    ПО ДопНачисления.НомерСтроки = ДопНачисленияБазаОсновныеНачислениея.НомерСтроки
    ГДЕ
    ДопНачисления.Регистратор = &Регистратор

    • GROOVY

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

  3. kurpyaev1

    Добрый день, если есть плохое представление работы регистров расчета 4-5 задачи, какой можно материал посмотреть для углубления знаний?

  4. kurpyaev1

    Добрый день, решаю 4ую задачу
    Почему у меня в ОбработкеПроведения документа КорректировкаДолга
    Получается
    ///
    Движение.Валюта = Выборка.Валюта;

    А не так как в видео уроке
    ///
    Движение.ВалютаДт = Выборка.Валюта;
    Движение.ВалютаКт = Выборка.Валюта;

    • GROOVY

      А у Вас видимо измерение Валюта балансовое, что не правильно в рамках этой задачи.

  5. Kubovtsov

    Добрый день, Коллеги . поясните плиз.

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

    • GROOVY

      Приветствую.

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

  6. kurpyaev1

    На платформе 8.3 обязательно очищать движения регистра при проведении?
    Пример:
    Движения.УчетнаяПолитикаСписаний.Записывать = Истина;
    Движения.УчетнаяПолитикаСписаний.Очистить();

    • GROOVY

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

  7. ivs2000

    Добрый день. на каркасной кофигурации в 4 задаче конструктор наваял не то, что у Вас в курсе, Павел.

    мое:
    Движение = Движения.РегистрБухгалтерии.Добавить();
    Движение.ВидДвижения = ВидДвиженияБухгалтерии.Дебет;
    Движение.Счет = ПланыСчетов.Управленческий.Покупатели;
    Движение.Период = Дата;
    Движение.Валюта = Валюта;
    СуммаРуб = СуммаПоДокументу * Курс;
    Движение.Сумма = СуммаРуб;
    Движение.ВалСумма = СуммаПоДокументу;
    Движение.Субконто[ПланыВидовХарактеристик.ВидыСубконто.Контрагенты] = Контрагент;
    Движение.Субконто[ПланыВидовХарактеристик.ВидыСубконто.Договоры] = Договор;

    • ivs2000

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

  8. Alenka

    Здравствуйте. В видео говорится о том, что можно сдавать на пустой и на каркасной. А в 1С мне написали, что принимать будут на каркасной. Как на самом деле происходит сейчас? Спасибо.

    • GROOVY

      Сдавать экзамен можно на пустой или каркасной конфигурации.

  9. Nallama

    Добрый день!

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

    • GROOVY

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

  10. Alenka

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

  11. Василий Карпухин

    Фраза из задачи №5:
    «За произвольный период отработанного времени (должен указываться в документе и может быть меньше периода ведения расчетов, например, всего несколько дней) сотрудникам компании начисляется премия процентом от всех начислений, сделанных в предыдущем же расчетном периоде»

    окончательно меня запутала.

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

    • GROOVY

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

  12. Andrefan

    Павел, подскажите, есть ли среди списка задач по Регистрам Расчета такие, в которых для регистра есть необходимость ставить периодичность, отличную от значения «Месяц»?

    • Andrefan

      Извиняюсь, вопрос снимается. Дошел до рассмотрения задачи 3.21, где Вы отвечаете на этот вопрос.

  13. Евгений Рымарев

    Здравствуйте Павел!!!
    Выражаю огромную благодарность за этот курс, благодаря ему все знания упорядочились и экзамен сдал с 1-ого раза, на решение ушло 3 часа, за задачу по УФ даже и не брался, был уверен в корректности решения основных задач. Результат пришел 3.5 бала «Не решена задача по УФ». Задачи на экзамене показались легче, чем разбираемые здесь. Какие попались задания я опубликовал на вашем форуме. ))) Еще раз спасибо Вам и всей команде учебного центра.

  14. Алексей

    Добрый день.
    1. Почему про услуги в первом и втором уроке ничего не сказано? Хотелось бы, чтобы хоть в одном видео по услугам прояснили ситуацию.
    2. Во втором видео в задании написано, что в отчете анализ продаж ресурсы себестоимость, количество, продажа, прибыль. Про количество забыли?
    3. Во втором видео, при получении метода списания, зачем его получаем в общем запросе, если он с ним никак не связан? Можно получить отдельным запросом?

    • GROOVY

      Здравствуйте.
      1. Мы досконально не решаем задачи. Этот курс — НЕ решение всех задач, для списывания. Если у Вас есть проблема с установкой в запросе условия по услугам, то еще рано сдавать экзамен.
      2. Аналогично.
      3. Можно получить отдельным запросом, это породит дополнительный вызов сервера SQL, на сертификации на оценку это может повлиять в последнюю очередь.

  15. Andrefan

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

    • GROOVY

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

  16. pozdnyakov.vitaliy

    Здравствуйте. Скажите, каким образом в 3 уроке ведущему удалось провести документ «Расходная накладная» с установленной блокировкой на регистр бухгалтерии «Управленческий» по полю «Склад», если такого поля в регистре вообще нет? Система должна была выдать ошибку

    • GROOVY

      Приведите текст ошибки, который у Вас возникает.

      • pozdnyakov.vitaliy

        «У пространства блокировок РегистрБухгалтерии.Управленческий не существует поля с именем Склад»
        на видео установка поля идет в 01:09:50

        • GROOVY

          Посмотреть видео возможности нет, но в прилагаемой базе, при установке блокировки используется поле «Субконто2».
          ЭлементБлокировки.УстановитьЗначение(«Субконто2», Склад);
          Также возможно установить блокировку на вид субконто, если заранее не известен порядок.

          Возможно при монтаже видео я допустил ошибку.

  17. Andrefan

    Добрый день, Павел!
    Вопрос по механизмам расчета. Можете ли объяснить, для чего в измерениях и реквизитах Регистра расчета у соответствующих значений мы указываем связь с графиком и признак «Базовое»? И чем чревато, если эти данные не указать?
    Заранее спасибо.

    • GROOVY

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

      • Andrefan

        Спасибо.
        А свойство «Связь с графиком»? Отсутствие заполненного свойства (если есть чем заполнить) как-то отразится на работу системы?

        • GROOVY

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

  18. Heckfy78

    Добрый день.
    Стартовая задача № 7 (бизнес-процессы) Оригинальная конфигурация.
    Не обновляется карта маршрута. Обновление происходит только после переоткрытия формы обработки. С чем это может быть связано?

    • GROOVY

      Это «особенность» интерфейса Такси. Уже год поправить не могут.

  19. Heckfy78

    Добрый день.
    Стартовая задача № 2 (оперативный учет)
    «Считается, что документы задним числом не вводятся, но старые документы могут неоперативно перепроводиться» — Что это значит и нужно ли это как-то обрабатывать?

  20. Heckfy78

    Добрый день.
    Задача 2.
    Что это значит и нужно ли это как-то обрабатывать: «Считается, что документы задним числом не вводятся, но старые документы могут неоперативно перепроводиться.»?
    Не нашел на видео касательства этого момента.

    • GROOVY

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

  21. Алексей

    Добрый день!
    Вопрос по задаче 1.3 из сборника (на фото).
    Нужно ли делать разные регистры для Количества и Себестоимости если эти показатели всегда будут учитываться в одном разрезе или можно сделать в одном и не использовать «новую методику проведения» или это будет ошибкой?

    • GROOVY

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

      • Алексей

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

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

        • GROOVY

          Можно пользоваться любой литературой которая есть в прайсе 1С + методичками с ЦСОшных курсов.
          На практике — это мало кому помогает.

  22. Евгений Рымарев

    Здравствуйте Павел!!!
    Павел подскажите пожалуйста, если в задании не сказано, что больничный должен вытеснить тариф, то в решении не нужно этого делать? Например задача 3.31. Спасибо.

    • GROOVY

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

  23. Евгений Рымарев

    Здравствуйте Павел!!!
    Вопрос по 8 занятию, а именно обновление карты маршрута при выполнении задачи. Дело в том, что она не обновляется, загрузил вашу конфигурацию с решением, но она и там не обновляется. Возможно дело в платформе, у меня 8.3.5.1443???

    • GROOVY

      Здравствуйте.
      Да, это «недокументированная возможность» интерфейса такси.

  24. ru_hawk

    Каким образом можно увидеть движения в форме документа, не создавая формы регистров и форму документа?

      • ru_hawk

        Но у меня развернута эталонная база с заданием 3.6 (DevAtt-Task-3.6-business-trips), ни у регистров расчета, ни у документа начисления зарплаты нет форм, но, когда я запускаю предприятие и открываю форму документа, у меня есть ссылка на переход в просмотру движений.

        • GROOVY

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

  25. Алексей

    Добрый день!
    В видео к задаче №2 на 0:23:47 говорится, что «мы не будем делать контроль остатков, т.к. делали это в пред. уроке». Хотя далее, все-таки, реализовываем контроль остатков при списании по партиям.
    Лучше, конечно, исключить эту фразу из видео, т.к. она сбивает с толку.

  26. Алексей

    Добрый день, Павел!
    В задаче 1 при проверке остатков происходит две записи в транзакции (документа и в РН) с последующим получением информации об отрицательных остатках (если таковые образовались). Не будет ли оптимальнее не делать запись в РН если КоличествоОстаток < 0, а в запросе вычитать из таблицы остатков таблицу ДокТЧ (объединив и сгруппировав) и установив ВидГраницы.Исключая и только при положительных результатах производить запись в РН?

    • Алексей

      Ещё раз проанализировал, похоже что это сработает только при неоперативном проведении. А при оперативном, в таком случае, надо будет записывать пустой набор и только потом проверять остатки и ещё раз записывать при успехе. Вопрос снят.

    • GROOVY

      Приветствую. Запись физически происходит в момент фиксирования транзакции.

  27. regmy

    Добрый день!
    Надо ли на экзамене предусматривать пересчет реквизита «Сумма документа» при изменении суммы в таб.части?
    То же самое в таб.части документа, при изменении цены|количества, необходимо ли предусмотреть пересчет суммы в строке?
    Снизят за это баллы?

    • GROOVY

      Если явно не написано, то не нужно.
      В большинстве задач реквизит «Цена» вообще не нужен.

  28. Альберт

    Добрый день!
    Подскажите пожалуйста что делаю не так. Задача №6.
    Создал ПланВидовРасчета ДопНачисления указал зависимость по периоду действия от Основных начислений, Период действия не используется.
    При открытии ПВР ДопНачисления в предприятии выпадает ошибка

    Невосстановимая ошибка
    Ошибка при выполнении запроса POST к ресурсу /e1cib/logForm:
    по причине:
    Ошибка SDBL:
    Тип поля #updatedRows.BaseCKBaseCK несовместим с типом поля BaseCKBaseCK

    Не могу понять почему..(

    • GROOVY

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

  29. alres

    Добрый день! Проблема с задачей 5.
    Такой запрос:
    «ВЫБРАТЬ
    ОсновныеНачисленияДанныеГрафика.НомерСтроки,
    ОсновныеНачисленияДанныеГрафика.ВидРасчета.СпособРасчета,
    ОсновныеНачисленияДанныеГрафика.Показатель,
    ОсновныеНачисленияДанныеГрафика.ЗначениеПериодДействия КАК НормаДней,
    ОсновныеНачисленияДанныеГрафика.ЗначениеФактическийПериодДействия КАК ФактДней
    ИЗ
    РегистрРасчета.ОсновныеНачисления.ДанныеГрафика(Регистратор = &Ссылка) КАК ОсновныеНачисленияДанныеГрафика»

    возвращает некорректные данные по НормаДней и ФактДней.

    У меня в регистре «Производственный календарь» заполнены графики «пятидневка» и «шестидневка» для подразделения «Администрация», сотруднику начисляется оклад по графику «пятидневка», но НормаДней и ФактДней считаются как сумма дней по обоим графикам, т.е. за январь 2015 вместо 22 дней возвращается 49 дней

    • alres

      Разобрался. В регистре расчета у измерения и реквизита не указал связь с графиком

  30. ZenP

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

    • GROOVY

      Конфигуратор, к сожалению, не настроить.
      Синтаксис обеспечивала внешняя программа Снегопат.

  31. ZenP

    Почему отчеты строятся через несколько наборов данных, а не скажем соединением соответствующих таблиц в одном наборе данных. Есть ли разница в поведении СКД по первому и второму принципу и есть ли какие то рекомендации?

    • GROOVY

      Соединения в СКД производятся на стороне сервера 1С, а соединения в запросе на стороне сервера sql. Больше разницы нет.

  32. p21

    Добрый день. Как округлить число в запросе ? «ВЫРАЗИТЬ(ПоступлениеТоваровУслугТовары.Цена КАК ЧИСЛО(15, 2)) КАК Цена» не срабатывает 1С:Предприятие 8.2 (8.2.19.121)

    ЗапросЦенИзпоступления = Новый Запрос;
    ЗапросЦенИзпоступления.Текст = «ВЫБРАТЬ ПЕРВЫЕ 1
    | ВЫРАЗИТЬ(ПоступлениеТоваровУслугТовары.Цена КАК ЧИСЛО(15, 2)) КАК Цена
    |ИЗ
    | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
    |ГДЕ
    | ПоступлениеТоваровУслугТовары.Номенклатура = &Номенклатура
    | И НЕ ПоступлениеТоваровУслугТовары.Ссылка.Дата > &Дата
    |
    |УПОРЯДОЧИТЬ ПО
    | ПоступлениеТоваровУслугТовары.Ссылка.МоментВремени УБЫВ»;

    • GROOVY

      У меня срабатывает. Платформа, правда 8.3. Но как я помню, это работало даже на 8.0.

  33. ru_hawk

    А где находятся информационные базы к этому пакету? В архиве ничего нет :(

  34. Бол

    ммм… а вопросы здесь или в мастер группе надо задавать — что то я запутался в схеме)))

    • Татьяна Гужавина

      Здравствуйте, Сергей!
      Разбор каждой задачи находится на отдельной странице, здесь Вы можете задавать свои вопросы по курсу.
      Стартовая страница по курсу — http://курсы-по-1с.рф/dev-attestation/startpage/

  35. Бол

    Добрый день!

    конструкции
    Данные = РезультатЗапроса.Выбрать().Следующий();
    и

    Данные = РезультатЗапроса.Выбрать();Данные.Следующий();

    работают по разному
    это просто особенность платформы или есть какой то более глубокий смысл?
    спасибо

    • GROOVY

      Не понял. Какая особенность платформы?
      Следующий() возвращает Истина или Ложь. Получено в выборке значение или нет.
      Выбрать() — возвращает выборку.

  36. p21

    Добрый день!

    1 Чем отличается набор данных объединение от связей наборов данных, в каком случае что лучше использовать ?

    2 в каком случае берется берется таблица итогов рассчитанная на 3999 год ?

    3 можно ли устанавливать блокировку на несколько документов одного вида ? можно ли делать блокировку на заданное время или до наступления события ?

    4 есть ли домашние задания для курса подготовки к аттестации на специалиста по платформе ?

    • GROOVY

      1. Объединение аналогично выражению ОБЪЕДИНИТЬ ВСЕ в запроса, а связи наборов это соединение, чаще левое или полное
      2. Если не указана дата на которую рассчитываются итоги
      3. Можно, а зачем блокировать документы? Блокировку можно устанавливать только в транзакции, а транзакцию «на заданное время»назначать… Ну это как-то у меня не складывается в голове. Поясните что Вы хотите сделать, а то я чувствую, что не понимаю вопроса.
      4. Нет, достаточно взять любую задачу из сборника

      • p21

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

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

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

        БлокировкаДанных = Новый БлокировкаДанных;
        ЭлементБлокировки = БлокировкаДанных.Добавить();
        ЭлементБлокировки.ИсточникДанных = Результат;
        ЭлементБлокировки.Режим = РежимБлокировкиДанных.Исключительный;
        БлокировкаДанных.Заблокировать();

        • GROOVY

          Не совсем понимаю при чем тут курс по подготовке к аттестации, но задача решается просто: Перед записью проверка «Если проведен ТО отказ».

  37. p21

    Добрый день.

    1 В стартовой задаче 1 26:40 Процедура СписокТоваровЕденицаИзмеренияПриИзменении(Элемент) используется на клиенте из это процедуры вызывается функция ПолучитьКоэфф(ЕдИзм) на сервере без контекста. Насколько понимаю «контекст» это реквизиты формы и здесь с клиента на сервер реквизиты формы не передаются. Это сделано для увеличения производительности или для чего то еще ?

    2 в той же задаче 38:03 сначала формируем движения а потом проверяем остатки. Как этот механизм позволяет избежать лишних блокировок ?

    3 в консоле запросов можно использовать конструктор (в толстом клиенте управляемом приложении) ?

    4 ведущее измерение регистра сведений 1:46:29 на что влияет эта настройка ?

    5 Обработка проведения документа выполняется на клиенте или на сервере ?

    • GROOVY

      1. Для уменьшения траффика между клиентом и сервером
      2. Да и не только.
      3. Попробуйте, у меня получалось
      4. Записи РС подчинены значению измерения
      5. Все транзакции выполняются на сервере, в том числе транзакция проведения.

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

  38. gyvenor

    Павел, здравствуйте.

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

    Ссылка на конфигурацию: https://yadi.sk/d/s1hanbTue9KJT

    • GROOVY

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

  39. artemusII

    Здравствуйте, Павел. Вопрос по задаче №4. В конце занятия перед созданием итогового отчета вы проводите документ Корректировка, чтобы сформировать проводки на величину отклонений. Перед проведением вы показываете доп.отчет, в котором видны отклонения по USD и EUR (300 и -100). После проведения документа в регистре бухгалтерии появляется проводка по валюте USD. По EUR проводки нет. Однако, когда вы демонстрируете доп.отчет по отклонениям, то отклонения исчезли не только по USD, но и по EUR. Это правильное поведение системы? Или я что-то неправильно понял? Заранее спасибо.

    • GROOVY

      Приветствую!

      При записи курса видео очень часто монтируется. Возможно просто «отрезали» кусок где были проводки по EUR.

  40. kvt500

    Занятие 7:
    Платформа: 8.3.5.1391
    Следующий код не работает, не обновляется карта маршрута бизнес процесса.

    Карта = БП.ПолучитьОбъект().ПолучитьКартуМаршрута();

    Здесь обсуждается http://www.forum.mista.ru/topic.php?id=716631, но решения я так и не нашел.

    • kvt500

      сделал как советовали ранее в комментариях:

      &НаКлиенте
      Процедура ОбновитьКарту(Команда)
          ОчиститьКартуНаСервере();
          ОбновитьКартуНаСервере();
      КонецПроцедуры

      &НаСервере
      Процедура ОчиститьКартуНаСервере()
        Карта = Новый ГрафическаяСхема;
      КонецПроцедуры

      &НаСервере
      Процедура ОбновитьКартуНаСервере()
          Если НЕ БП.Пустая() Тогда
          Карта = БП.ПолучитьОбъект().ПолучитьКартуМаршрута();
          КонецЕсли;
      КонецПроцедуры
    • GROOVY

      Это ошибка платформы, точнее, графической библиотеки интерфейса «Такси».

  41. Linkoln

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

    2. В каркасной конфигурации есть регистр сведений «СведенияОСотрудниках» для хранения данных об окладах сотрудников. Не будет ли представленный вами в видео способ ввода руками в поле документа «Параметр» ошибкой: «Неоптимальность предлагаемого решения или невыполнение отдельных пунктов задания. Упрощение решаемой задачи.(0,5 — 3,0 балла)»?

    • GROOVY

      1. Если требуется автоматизация, то следует использовать «Приоритеты».
      2. Решение экзамена допускается на пустой базе и автоматизировать получение оклада при формировании записей РР никто не требует.

    • kvt500

      Разобрался. Там с базовым периодом напутал

  42. user777

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

    • GROOVY

      Какой отчет, к какой задаче? Что конкретно не получается?

  43. artemusII

    Здравствуйте, Павел. Задача №1, проведение по РН СтоимостьТоваров. Непонятен кусок кода по определению параметра МоментИтогов. А именно:

    Движения.СтоимостьТоваров.Очистить();
    Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда
    Движения.СтоимостьТоваров.Записать();
    Иначе
    МоментИтогов = МоментВремени();
    КонецЕсли;

    Несмотря на ваши пояснения в уроке все никак не получается понять(((… Пробовал понять на практие, написал

    Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда
    МоментИтогов = ‘00010101’;
    Иначе
    МоментИтогов = МоментВремени();
    КонецЕсли;
    Без очистки и записи… Все отработало корректно, расчеты прошли правильно. Не пойму тогда зачем очищать. В настройках движений стоит «Удалять движения автоматически при отмене проведения». Не могли бы вы подсказать тот какой-нибудь пример входных данных, на котором бы мой код отработал бы некорректно, а ваш правильно. Может это поможет мне понять.

    • GROOVY

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

      • artemusII

        Павел, это я понимаю, но я не могу смоделировать ситуацию, когда приведенный вами код

        Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда Движения.СтоимостьТоваров.Записать();
        Иначе МоментИтогов = МоментВремени(); КонецЕсли;
        На что-то влиял.

        Вместо этого я написал

        Если РежимПроведения = РежимПроведенияДокумента.Оперативный Тогда МоментИтогов = ‘00010101’;
        Иначе МоментИтогов = МоментВремени(); КонецЕсли;

        И у меня все отрабатывает корректно. Я завел 2 ПРИХОД с товаром А. В одной кол 5 сум 10, в другой кол 5 сум 20. Затем сделал РАСХОД на 2 вчерашним днем, а затем РАСХОД сегодняшним (опер.пров-ие). Оба куска кода (ваш и мой) показывают одни данные. Не могу понять зачем тогда при оперативном проведении писать Движения.СтоимостьТоваров.Записать(). Помогите, пожалуйста, разобраться. Может быть вы приведете маленький пример вх.данных (Приход и Расход и даты)?

        • GROOVY

          Так у Вас себестоимость не меняется :)

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

          • artemusII

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

            • GROOVY

              Не могу с уверенностью сказать, но думаю что в этой задаче это не критично.

  44. Dubrovin

    Здравствуйте, Павел

    При решении задач по расчетным механизмам есть необходимость ставить блокировки ?

  45. Dubrovin

    Добрый день, Павел

    Вопрос по задаче зарплатной задаче № 6. В решении задачи рассматривается прогул всей смены, а как можно реализовать внутрисменный прогул, скажем 3 часа ? И если смена не 24 часа, а 8 с 9 до 18 да еще и с обедом с 13 до 14? Как правильно настроить в этом случае график ?

    • GROOVY

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

  46. Дмитрий

    Добрый день!

    Замучился с задачей 5.02. На Форме создал реквизит СсылкаНаКартинку, Строка, длина 0. У объекта реквизит ДанныеКартинки, тип Хранилищезначений. Делал по образцу Вашей статьи с Инфостарта, работа с картинками в интерфейсе Такси, все работает, кроме получения картинки из ХранилищаЗначений при открытии формы. Из файла — картинка отображается нормально, но вот при получении из ИБ — никак.

    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
       
        Если ЗначениеЗаполнено(Объект.ПутьКФайлу) Тогда
           
            Картинка = Новый Картинка(Объект.ПутьКФайлу);
            СсылкаНаКартинку = ПоместитьВоВременноеХранилище(Картинка,УникальныйИдентификатор);
           
        Иначе
            СсылкаНаКартинку = ПолучитьНавигационнуюСсылку(Объект.Ссылка,"ДанныеКартинки");
        КонецЕсли;
    //СсылкаНаКартинку = ПоместитьВоВременноеХранилище(ТекущийОбъект.ДанныеКартинки,УникальныйИдентификатор);
       
    КонецПроцедуры

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

    Платформа — 8.3.5.1186. Это глюк платформы или у меня что то пошло не так?

    Спасибо!

    • GROOVY

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

  47. SoftMaker.kz

    Здравствуйте, Павел! Я просмотрел первую задачу и не увидел, чтобы вы реализовали пункт: «продать возможно не более одного рулона с каждого склада». Это так или я ошибаюсь? Если на экзамене не будет этого пункта, то снизит ли экзаменатор бал за невыполнение отдельных пунктов задания?
    Спасибо.

    • GROOVY

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

  48. an2

    Добрый день.
    Возникли проблемы при решении задачи 1.5:
    Что делать с партиями когда у нас меняется учетная политика с фифо на среднее и обратно.

    • GROOVY

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

  49. an2

    Добрый день.
    Возникли проблемы при решении задачи 1.6:
    Не могу разобраться как заполнить себестоимость для реализации в минус при проведении поступления.
    Хотелось бы посмотреть решение.

    • GROOVY

      Такого видео нет.
      Попробуйте сформулировать что Вы делаете и что конкретно у Вас не получается.

      • an2

        Поступление №1 приходует 1 товара на сумму 100
        Проводки:
        Приход — Товар — Поступление №1 — 1 — 100

        Реализация №2 списывает 2 товара
        Проводки:
        Расход — Товар — Поступление №1 — 1 — 100
        Расход — Товар — Пусто — 1 — 0

        Поступление №2 приходует 2 товара на сумму 200
        Проводки:
        ???

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

        • GROOVY

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

          • an2

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

            • GROOVY

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

              • an2

                Если есть возможность выложите, пожалуйста решение.
                Документы проводятся оперативно и последовательность не нарушится.
                Вот пример:
                Документы проводятся по порядку
                Реализация1 1
                Реализация2 5
                Реализация3 15
                Поступление1 20
                Последовательность будет сдвигаться, в момент проведения Поступление1 последовательность будет на 15, а нам необходимо рассчитать все документы.

                • GROOVY

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

              • an2

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

                Прошло 2 недели, а ответ я так и не получил, вы даже не прочитали условия задачи!

                • GROOVY

                  1. Данная задача в рамках курса вообще не разбирается.
                  2. Дата поступления и дата ввода (регистрации) прихода это разные вещи. Документ приходная вводится 01.02, но регистрирует движения от 01.01, тем самым нарушая последовательность, при восстановлении последовательности перепроводятся расходные, выравнивая остатки в регистрах и регистрируя продажи. В решении будет 3 регистра, с остатками, с партиями, с продажами.

Комментарии закрыты