Книга: Сборник задач для подготовки к экзамену «1С:Специалист» по платформе «1С:Предприятие 8.3»
Назад: 3.Оперативный учет
Дальше: 4.Бухгалтерский учет

3.2.Решение

1.Внесем изменения в структуру регистра накопления «Остатки номенклатуры».

2.Для хранения истории изменения Учетной политики добавим новый регистр сведений «Учетная политика».

3.Внесем изменения в процедуру «ОбработкаПроведения()» документа «Приходная накладная».

4.Внесем изменения в структуру и форму документа «Расходная накладная».

5.Перейдем к формированию текста процедуры «ОбработкаПроведения()» документа «Расходная накладная»:

a.Получим данные по Учетной политике из периодического регистра сведений.

b.Установим управляемую блокировку:

i.На конфигурацию в целом;

ii.На те записи регистров, по которым осуществляется чтение, а потом – запись.

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

Таблица № 3.1. Желаемый вид таблицы для формирования записей в регистре «Остатки номенклатуры» при проведении документа «Расходная накладная»

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

i.В качестве исходных данных при формировании таблицы возьмем табличную часть документа и информацию об остатках;

Таблица № 3.2. Данные табличной части проводимого документа «Расходная накладная № 1»

Номенклатура Кол-во Цена Сумма Партия
Товар для проверки 2 205,00 410,00
Товар для проверки 1 200,00 200,00 Приходная 1 от 10.01.2022 12:00:00
Товар для проверки 1 220,00 220,00 Приходная 3 от 12.03.2022 12:00:00
Товар для проверки 1 240,00 240,00 Приходная 3 от 12.03.2022 12:00:00

Таблица № 3.3. Информация по остаткам товаров на момент проведения документа

Номенклатура Партия Остаток, кол-во Остаток, сумма
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 2 200,00
Товар для проверки Приходная 2 от 11.02.2022 12:00:00 2 220,00
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 3 360,00

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

Таблица № 3.4. Свернутая табличная часть документа

Номенклатура Партия Кол-во
Товар для проверки 2
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 2

iii.Получим данные по остаткам (Таблица № 3.3);

iv.Для партий, указанных в документе, получим списываемые количества и суммы с учетом остатков. Чтобы в дальнейшем начинать списывать именно с этих партий, в выборку добавлена колонка «Порядок сортировки»;

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

Номенкла­тура Партия Кол-во в выбранной партии Сумма в выбранной партии Порядок сортировки
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1 100,00 1
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 2 240,00 1

v.Для партий, указанных в документе, получим остатки за вычетом списанного на предыдущем шаге;

Таблица № 3.6. Оставшиеся количество и суммы для указанных в документе партий

Номенкла­тура Партия Кол-во в выбранной партии Сумма в выбранной партии Порядок сортировки
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1 100,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 1 120,00 2

vi.Объединив данные таблиц № 3.5 и № 3.6, получим все остатки по партиям, указанным в документе;

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

Номенкла­тура Партия Кол-во в выбранной партии Сумма в выбранной партии Порядок сортировки
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1 100,00 1
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 2 240,00 1
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1 100,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 1 120,00 2

vii.Получим остатки по остальным партиям:

1.Возьмем данные таблицы № 3.7 с обратным знаком и объединим с полными остатками таблицы № 3.3;

Таблица № 3.8. Промежуточная таблица с информацией по остаткам

Номенкла­тура Партия Остаток, кол-во Остаток, сумма Порядок сортировки
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 -1 -100,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 -2 -240,00 2
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 -1 -100,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 -1 -120,00 2
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 2 200,00 2
Товар для проверки Приходная 2 от 11.02.2022 12:00:00 2 220,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 3 360,00 2

2.Свернем данные таблицы № 3.

Таблица № 3.9. Остатки по партиям, не указанным в документе

Номенкла­тура Партия Остаток, кол-во Остаток, сумма Порядок сортировки
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 0 0 2
Товар для проверки Приходная 2 от 11.02.2022 12:00:00 2 220,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 0 0 2

viii.Получим остатки по всем партиям, упорядоченные необходимым образом, объединив данные таблиц № 3.7 и № 3.9 с последующей сверткой записей по номенклатуре, партии и порядку сортировки;

Таблица № 3.10. Остатки по всем партиям, упорядоченные необходимым образом

Номенкла­тура Партия Остаток, кол-во Остаток, сумма Порядок сортировки
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1 100,00 1
Товар для проверки Приходная 1 от 10.01.2022 12:00:00 1 100,00 2
Товар для проверки Приходная 2 от 11.02.2022 12:00:00 2 220,00 2
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 2 240,00 1
Товар для проверки Приходная 3 от 12.03.2022 12:00:00 1 120,00 2

ix.Соединив табличную часть документа (таблицу № 3.4) с таблицей № 3.10, упорядочив результат и добавив итоги по номенклатуре, получим таблицу, вид которой совпадает с видом таблицы № 3.1.

d.Для формирования записей в регистре накопления применим алгоритм «Списание по партиям».

6.Добавим в конфигурацию отчет, отображающий данные по остаткам номенклатуры.

7.Создадим в конфигурации отчет, отображающий данные по продажам:

e.Добавим новый оборотный регистр «Продажи».

f.Внесем изменения в процедуру «ОбработкаПроведения()» документа «Расходная накладная».

g.Создадим отчет.

Назад: 3.Оперативный учет
Дальше: 4.Бухгалтерский учет