ЗАНЯТИЕ 27. РАСЧЕТ СЕБЕСТОИМОСТИ БЕЗ УЧЕТА СРОКОВ ГОДНОСТИ. ПОДГОТОВКА К СПЕЦИАЛИСТУ ПО ПЛАТФОРМЕ 1С

Поділитися
Вставка
  • Опубліковано 29 лис 2024

КОМЕНТАРІ • 40

  • @ЕкатеринаГригорченкова

    Интересные замечания у слушателей. Скорее хочу послушать следующее занятие с работой над ошибками!

  • @Katya_Grig
    @Katya_Grig 5 місяців тому

    Илья, спасибо за занятие!😊

  • @cilantro_bumblebee
    @cilantro_bumblebee 3 роки тому +2

    Как всегда спасибочки, все супер!

  • @MrPiear
    @MrPiear Рік тому +1

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

  • @АлексейФедоскин-я2щ

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

  • @evgeniyapavlova5147
    @evgeniyapavlova5147 2 роки тому +1

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

  • @PTolkachev
    @PTolkachev 3 роки тому +3

    По поводу отдельного запроса для каждого регистра. Смотреть, как в УТ 10 так себе затея. Там легаси код, который не соответствует актуальным методическим рекомендациям от самой 1С, указанных на ИТС. Вот в УТ 11 там для каждого регистра отдельный запрос (в итоге выполняется пакет запросов). Естественно, предварительно таблица товаров помещается во временную, чтобы для каждого запроса не выполнять обращение к БД. Я за этот подход. Код действительно становится более читабельным, да и вносить изменения гораздо проще. Например, если что-то поменялось при проведении по одному регистру, то гораздо проще поправить соответствующий запрос, чем вносить изменения в "монстра", который получает за раз данные для всех (нескольких) регистров (хотя, чисто для экзамена, думаю, допускается и write only код). А вот по поводу копеек не вижу ни чего страшного в таком округлении. Сам такое практикую, но более того (в конце концов, кто я такой) в типовых конфигурациях именно так и делают. Да и своим скудным мозгом я даже не могу придумать другого алгоритма. Если умные люди скажут, как правильно, буду признателен и использовать их подход.

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому

      В УТ 11 методика уникальная, конечно. Нам тут такое делать не надо.
      Тоже пока не могу придумать другого алгоритма. Будет интересно узнать о существовании более красивого решения.

  • @АлексейФедоскин-я2щ

    Класс, решению проблем округления копеек, я сам бы никогда не догадался бы

  • @svetlanakomarova5415
    @svetlanakomarova5415 3 роки тому +1

    спасибо за видео,

  • @ЖаннаАгузарова-м9у
    @ЖаннаАгузарова-м9у 3 роки тому +3

    Илья, спасибо за очень качественные стримы. Очень полезно и интересно. Ты сказал, что задачи по БУ будут в мае, а когда планируются расчетные задачи и задачи по упр. формам и бизнес процессам, если они будут вообще?

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому +4

      План такой:
      1) ОУ;
      2) БУ;
      3) СПР;
      4) Упр.формы;
      5) Бизнес-процессы.
      Закрываем одно - делаем другое. В каждом разделе по 16 задач.
      Когда это будет конкретно по датам, никто не знает. Но я стараюсь не затягивать.

    • @dnk3569
      @dnk3569 3 роки тому

      @@IlyaLeontyev Илья, спасибо. Ты лучший стример по 1С

  • @АндрейДавидович-ч8я

    Спасибо!

  • @ВалерийБобышев
    @ВалерийБобышев 3 роки тому +2

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

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому +2

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

  • @НикитаХарченко-с8т
    @НикитаХарченко-с8т 3 роки тому +3

    47:07 Отвернулся)

  • @daniilmatveev
    @daniilmatveev Рік тому

    58:12 конкретно в \том случае переменная Движение и так хранить последнюю записть регистра Себестоимость. Поэтому можно изменять прямо её без обращения к регистру.

  • @СергейП-к2л
    @СергейП-к2л 3 роки тому +1

    А если не рассчитывать погрешность, а по аналогии со списанием последней себестоимости? С момента: СебестоимостьИтого = 0; и далее ВыборкаДетальныеЗаписи: СебестоимостьИтого=Себестоимость; После каждого Движения уменьшаем СебестоимостьИтого и в последнем движении Если КоличествоКСписанию=Количество списываем остаток СебестоимостьИтого? (может чего накосячил с логикой, извините, но смысл я думаю понятен, скорее всего и округление не понадобиться)

  • @ПавелЮркунас
    @ПавелЮркунас 3 місяці тому

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

  • @ЕвгенийФедоров-п1ж
    @ЕвгенийФедоров-п1ж 2 роки тому +2

    Думаю, что нужно было иначе спроектировать регистры и обойтись только двумя. По сути - это завуалированная задача с приходом, перемещением и списанием, следовательно и со структурой регистров остатков и партий.
    Нужно было сделать один регистр "СтоимостиНоменклатуры" с измерением Номенклатура и ресурсами кол-во и сумма, а для учета остатка номенклатуры сделать еще ОДИН регистр "ОстаткиНоменклатуры" с измерениями Номенклатура, СтатусНоменклатуры, Срок хранения, СрокЭксплуатации и с ресурсом кол-во. СтатусНоменклатуры - это можно сделать перечисление с вариантами "Не введен в эксплуатацию" и "Введен в эксплуатацию". При вводе в эксплуатацию делать "+/-" по регистру "ОстаткиНоменклатуры" , а по регистру "СтоимостиНоменклатуры" делать движение только про приходовании номенклатуры от поставщика и при списании с истекшими сроками.

  • @ВоробейБородатый
    @ВоробейБородатый 3 роки тому +2

    Илья привет, вопрос такой ты получаешь последнее движение через Количество() - 1, у тебя ведь в движение.Стоимость и так последняя запись. Это не то что предъява, просто охото разобраться можно ли так сделать Если НЕ Погрешность = 0 Тогда движение.Стоимость = движение.Стоимость + Погрешность КонецЕсли

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому +2

      Привет! Спасибо за замечание.
      Так, пожалуй, действительно будет лучше )

    • @Evgeniy_Masharov
      @Evgeniy_Masharov 3 роки тому

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

  • @АлексейФедоскин-я2щ

    Кстати я тут подумал, а почему бы не оставить было бы себестоимость в первом регистре и вычислять себестоимость сразу 2-умя способами? ведь для этого всё есть или экзаменатор не поймёт и скажется зачем нагружаете систему)))

  • @IvanIvanovichZ
    @IvanIvanovichZ 3 роки тому +2

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

  • @VashDrug007
    @VashDrug007 3 роки тому +2

    братух, напиши какие у тебя наушники и веб камера? и мокрофон??

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому

      Наушники - Sennheiser PXC 550.
      Микрофон - Maono AU-PM422.

    • @VashDrug007
      @VashDrug007 3 роки тому

      @@IlyaLeontyev а вебка?

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому +1

      @@VashDrug007 Canon M50 + объектив Sigma AF 16mm f/1.4 )

  • @gerodoth
    @gerodoth 3 роки тому +2

    Плотно. Настолько плотно что по одному регистру я списал 17 а по двум другим по 13, придется еще раз смотреть, ну повторение мать учения.

  • @nikbelov1731
    @nikbelov1731 3 роки тому +2

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

    • @IlyaLeontyev
      @IlyaLeontyev  3 роки тому +2

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

    • @nikbelov1731
      @nikbelov1731 3 роки тому +1

      @@IlyaLeontyev спасибо, чета походу напарил )))

    • @swampfolk2526
      @swampfolk2526 3 роки тому +1

      @@IlyaLeontyev Зачем вообще приходовать себестоимость в регистр оборудование в эксплуатации? В билете про это нет ни слова, что ввод в эксплуатацию куда то там двигает себестоимость. Конечно в управленческом то учете оно правильно списывать себестоимость при вводе в эксплуатацию, но в задаче этого нет. Можно сделать, что себестоимость списывает только выбытие оборудования и не городить огород. Для отчета тут конечно усложняется чуть ситуация, но ...

  • @ka4kovskiy
    @ka4kovskiy 2 роки тому +1

    Самый лучший расчет себестоимости без учетов сроков годности, что я видел =)

  • @malinalime8227
    @malinalime8227 9 місяців тому

    10:50