Метод Fifo/lifo

Тема в разделе "1C и всё что с ней связано", создана пользователем regal, 6 янв 2011.

  1. regal

    regal Гость

    Помогите пожалуйста. Мне в задании нужно реализовать метод FIFO/LIFO. Т.е. при проведении документа Расходная накладная должны списываться партии, формируемые приходными накладными в определенном порядке. Не могу понять смысл этого. В регистре накопления просто считается приход/расход. Можно осуществить контроль общей стоимости и количества товара на складе, чтобы не падали ниже нуля. Так в чем же смысл этих методов? Что в итоге должен показывать регистр? Или просто нужно удалять Приходные накладные(звучит глупо, но как вариант).
     
  2. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    Что за задание-то?)
    Регистр должен хранить:
    Носки
    - Поступление №1 100р 10шт
    - Поступление №2 200р 30шт
    Чулки с подвязками
    - Поступление №1 500р 10шт
    - Поступление №2 300р 30шт

    При списании должны делать движения расхода по определенным партиям.

    Отличия ФИФО от ЛИФО читайте в гугле.
     
  3. regal

    regal Гость

    Отличия ФИФО от ЛИФО я знаю. Только вот как регистр должен записывать эти движения?
    Допустим есть расх.накладная с расходом носков в количестве 20шт и чулков в количестве 25шт.
    Носки
    Приход - Поступление №1 100р 10шт ПрихНакл1
    Приход - Поступление №2 200р 30шт ПрихНакл2
    Чулки с подвязками
    Приход - Поступление №1 500р 10шт ПрихНакл1
    Приход - Поступление №2 300р 30шт ПрихНакл2

    Расход - Носки - Списание №1 200р 20шт РасхНакл1
    Расход - Чулки с подвязками - Списание №1 1250р 25шт РасхНакл1

    Как должно быть правильно?
     
  4. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    И все же, откуда задача?)

    В регистре сделайте измерение "Партия", в него писать документ поступления, как при поступлении, так и при списании (т.е. указываете, с какой партии списывается).
    Могу кинуть ссылок на примеры.
     
  5. regal

    regal Гость

    Задача для подготовки к экзамену для сертификации 1С. Я скачал целый список таких задач. Это мне нужно для повышения уровня знаний, чтобы получить работу стажера-программиста.
    Скинь пожалуйста ссылки на примеры. Буду очень благодарен.
    З.Ы. Вообще то документ поступления указан в поле Регистратор, ну буду думать.
     
  6. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    http://chistov.spb.ru/forum/16-969-1 - Ищи свою по номеру.

    Надеюсь, сдавать тебе не надо экзамен?)
    Я вот как раз к пересдаче готовлюсь.... Ох уж эти задачки... Раз на то пошло, вчерашнюю задачу на экзамене надо решать через демонический список.
     
  7. regal

    regal Гость

    Хм. Очень интересно. Выложены варианты, кто как решил. Большое спасибо за эту ссылку. Да, первая задача решается через динам.список, но у меня видоизмененное задание. Там еще есть и выбор партий для списания вручную. Для этого поле формы с ТЗ и нужно, чтобы в него вписывались партии товара, выбранного пользователем в отдельном поле ввода, с ТЗ соответственно двойным щелчком мыши либо кнопкой Выбрать идет выбор в табличную часть, откуда документ при проведении будет брать данные для списания. Вообще здесь еще много чего порешал для удобства пользователя и корректности обработки данных при неправильных его действиях(например, табчасть не может заполнятся идентичными партиями, видимость и доступность элементов на разных этапах и т.д.)
     
  8. regal

    regal Гость

    Блин, застрял на мелочи. У меня запрос возвращает выборку из регистра накопления. Так там есть поле ВидДвижения. Мне нужно, чтобы при обходе полученной выборки срабатывало условие:
    Если Выборка.ВидДвижения = "Приход" Тогда...
    Но ни так, ни через СокрЛП("Приход") оно не срабатывает. Подскажите, пожалуйста, что нужно сделать?
     
  9. unknown181538

    unknown181538 НеГуру
    1C Team

    Регистрация:
    28 дек 2008
    Сообщения:
    1.418
    Симпатии:
    0
    Код ( (Unknown Language)):
    Если Выборка.ВидДвижения = Значение(ВидДвиженияНакопления.Приход) Тогда...
    Мог наврать с синтаксисом.
    Только ты что-то не то делаешь. Зачем тебе это в этих задачах?

    Нет.. это в запросе так... Впрочем можно и в запросе поле задать.
    Ну или Если Выборка.ВидДвижения = (ВидДвиженияНакопления.Приход) Тогда
     
  10. regal

    regal Гость

    Я сделал по последнему варианту и у меня получилось. Спасибо за подсказку.
    Насчет зачем, так я еще делаю тот видоизмененный вариант задания. Просто при варианте выбора списания Вручную, при нажатии кнопки "Сформировать список партий" в ТЗ кидало все записи регистра выбранного товара,а мне нужны только партии для списания, т.е. записи регистра с видом движения Приход.
     
Загрузка...

Поделиться этой страницей