Процесс учета складских и торговых операций на торгово-розничном предприятии ООО "Техно Сервис"

Динамика выпуска и реализации продукции. Оценка капитала, вложенного в имущество. Оценка доходности продаж продукции и услуг. Финансовая устойчивость предприятия, показатели платежеспособности и ликвидности. Анализ ритмичности работы ООО "Техно Сервис".

Рубрика Экономика и экономическая теория
Вид дипломная работа
Язык русский
Дата добавления 18.10.2012
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

6. Герасименко В.В. "Ценовая политика фирмы" - М. Финстантинформ 1995.

7. Долженков В., Мозговой М. Visual Basic.NET: учебный курс. - СПб: Питер, 2003.

8. Котлер Ф. "Основы маркетинга" М.: Прогресс, 1990.

9. Николаев В.И., Петров А.А. “Эффективность систем: методы оценивания”. - СПб.: СЗПИ, 1993 г.

10. Пунин Е.И. "Маркетинг, менеджмент и ценообразование на предприятиях." М.: Международные отношения. 1993 - 112 с.

11. Хлусов В.П. "Основы маркетинга". - М., 1997 г.

12. Ценообразование. Под ред. проф. И.К. Салимжанова. Учебное пособие. Москва. Финстантинформ 1996.

13. Чубаков Г.Н. "Стратегия ценообразования в маркетинговой политики предприятия", М. Инерра - М.

14. Экономическое обоснование дипломных проектов. Методические указания. - СПб.: СЗПИ -1993 г.

Приложение

Программный код.

Справочник.Контрагенты.

Процедура ПриНачалеВыбораЗначения(ИдентификаторЭлемента, ФлагСтандартнойОбработки)

Если ИдентификаторЭлемента = "ОсновнойДоговор" Тогда

Если ТекущийЭлемент().Выбран() = 0 Тогда

Если Вопрос("Перед выбором основного договора

|необходимо записать элемент! Записать?", "Да+Нет") = "Нет" Тогда

Возврат;

Иначе

Записать();

КонецЕсли;

КонецЕсли;

ОсновнойДоговор.ИспользоватьВладельца(ТекущийЭлемент());

КонецЕсли;

КонецПроцедуры

Справочник.Номенклатура

//____________________________________________________________

Процедура УправлениеДиалогом()

НомЗакладки = Форма.Закладки.ТекущаяСтрока();

ИспСлои = Форма.Закладки.ПолучитьЗначение(НомЗакладки);

Форма.ИспользоватьСлой(ИспСлои, 2);

КонецПроцедуры // УправлениеДиалогом()

//____________________________________________________________

Процедура РасчетРозничнойЦены()

РозничнаяЦена=ОптоваяЦена*(1+(Константа.ПроцентНаценки.Получить(ТекущаяДата())/100));

//Константа.ПроцентНаценки у нас в %

КонецПроцедуры //РасчетРозничнойЦены()

//___________________________________________________________

Процедура ВыборДаты()

глВвестиДатуПериодическихРеквизитов(Контекст, 1);

КонецПроцедуры //ВыборДаты()

//___________________________________________________________

// Предопределенная процедура

//

Процедура ПриВыбореЗакладки(НомерЗакладки, ЗначениеЗакладки)

УправлениеДиалогом();

КонецПроцедуры // ПриВыбореЗакладки()

//____________________________________________________________

//____________________________________________________________

Процедура ПриОткрытии()

Форма.ИспользоватьЗакладки(1);

Форма.Закладки.ДобавитьЗначение("Общий,Основной, Материапл", "Основные");

Форма.Закладки.ДобавитьЗначение("Общий, Дополнительный", "Дополнительные");

Форма.ИспользоватьСлой("Общий,Основной",2);

КонецПроцедуры //ПриОткрытии

//____________________________________________________________

Процедура ВводНового()

Форма.ИспользоватьСлой("Основной",2);

КонецПроцедуры //ПриОткрытии

//____________________________________________________________

Форма ДляПодбора

Функция Остаток()

ТекТовар=ТекущийЭлемент();

// Получаем текущий товар в строке

КолТов=Регистр.ОстаткиТоваров.СводныйОстаток(Склад,ТекущийЭлемент(),,"Количество");

// Получаем суммарный остаток по ресурсу "Количество"

// по измерениям "Склад" и "Товар", по остальным измерениям суммируем

Если КолТов<=0 Тогда

Возврат("");

// если товара на складе нет в поле Ост вернем пустую строку

Иначе

Возврат(КолТов);

// иначе вернем количество остатка

КонецЕсли;

КонецФункции

ПриходнаяНакладная. Модуль формы

//__________________________________________________________

Функция ИтоговаяСтрока()

ИтСтр = "Итого получено на сумму: " + СокрЛ(Формат(Итог("Всего"),"Ч20.2-,")) + ", "+

"в т.ч. НДС: " + СокрЛ(Формат(Итог("НДС"),"Ч20.2-,"));

Возврат ИтСтр;

КонецФункции // ИтоговаяСтрока()

//____________________________________________________________

Процедура ВводНового()

Налог = Константа.ОсновнаяСтавкаНДС.Получить(ДатаДок);

КонецПроцедуры //ВоодНового

//____________________________________________________________

Процедура Пересчет(ИмяРеквизита)

Если (ИмяРеквизита = "Количество") или (ИмяРеквизита = "Цена") Тогда

СтавкаНДС = Налог;

Сумма = Количество * Цена;

Если НДССверху = 1 Тогда

НДС = Количество * Цена * СтавкаНДС.Ставка / 100;

Всего = Сумма + НДС;

Иначе

НДС = Количество * Цена * СтавкаНДС.Ставка / (100 + СтавкаНДС.Ставка);

Всего = Сумма;

КонецЕсли;

ИначеЕсли ИмяРеквизита = "Сумма" Тогда

Цена = ?(Количество = 0, Сумма, Сумма/Количество);

ИначеЕсли ИмяРеквизита = "НДС" Тогда

Если НДССверху = 1 Тогда

Всего = Сумма + НДС;

Иначе

Всего = Сумма;

КонецЕсли;

КонецЕсли;

КонецПроцедуры //Пересчет

//_________________________________________________________

//Вызывается при изменение метода расчета НДС - В сумме или сверху

Процедура ПересчетТаблЧасти()

Если КоличествоСтрок() > 0 Тогда

Если Вопрос("Пересчитать суммы табличной части?", "Да+Нет") = "Да" Тогда

ВыбратьСтроки();

Пока ПолучитьСтроку() = 1 Цикл

Пересчет("Количество");

КонецЦикла;

КонецЕсли;

КонецЕсли;

КонецПроцедуры //ПересчетТаблЧасти

//____________________________________________________________

Процедура ЗаполнитьЦеныНаДату()

ВыбратьСтроки();

Пока ПолучитьСтроку()=1 Цикл

Цена = Номенклатура.ОптоваяЦена.Получить(ДатаДок);

Пересчет("Цена");

КонецЦикла;

КонецПроцедуры //ЗаполнитьЦеныНаДату()

//____________________________________________________________

Процедура Печать()

Таб=СоздатьОбъект("Таблица");

Таб.ИсходнаяТаблица("Таблица ");

Таб.ВывестиСекцию("Шапка");

НПП = 0;

ВыбратьСтроки();

Пока ПолучитьСтроку()=1 Цикл

НПП = НПП + 1;

Таб.ВывестиСекцию("Строка");

КонецЦикла;

ИтСумма = Итог("Сумма");

ИтНДС = Итог("НДС");

ИтВсего = Итог("Всего");

ИтогПр=Формат(Итог("Сумма"),"ЧПДС");

// В переменную ИтогПр мы выведем сумму прописью

Таб.ВывестиСекцию("Подвал");

Таб.ТолькоПросмотр(1);

Таб.ПараметрыСтраницы(1,100,1);

Таб.Показать("");

КонецПроцедуры

//__________________________________________________________

Процедура ПриОткрытии()

ПриЗаписиПерепроводить(1);

КонецПроцедуры

ПриходнаяНакладная. Модуль документа

Процедура ОбработкаПроведения()

Если Поставщик.Выбран() = 0 Тогда

Предупреждение("Контрагент не выбран");

НеПроводитьДокумент();

КонецЕсли;

Если Договор.Выбран()=0 Тогда

Предупреждение("Договор не выбран");

НеПроводитьДокумент();

КонецЕсли;

Если Вопрос("Изменить оптотвые цены в справочнике ""Номенклатура""?","Да+Нет") = "Да" Тогда

ИзмЦены = 1;

КонецЕсли;

// Долг за поставленный нам товар возрос

Регистр.Взаиморасчеты.Контрагент = Поставщик;

Регистр.Взаиморасчеты.Договор = Договор;

Регистр.Взаиморасчеты.Сумма = Итог("Всего");

Регистр.Взаиморасчеты.ФлагДвижения = 1;

Регистр.Взаиморасчеты.ДвижениеПриходВыполнить();

// по каждой строке

ВыбратьСтроки();

Пока ПолучитьСтроку() = 1 Цикл

Если ИзмЦены = 1 Тогда

ЦенаСНДС = Всего/Количество;

УстановитьРеквизитСправочника(Номенклатура,"ОптоваяЦена",ЦенаСНДС,ДатаДок);

КонецЕсли;

// Увеличиваем количество товара на складе

Регистр.ОстаткиТоваров.Склад = Склад;

Регистр.ОстаткиТоваров.Товар = Номенклатура;

Регистр.ОстаткиТоваров.Партия = ТекущийДокумент();

Регистр.ОстаткиТоваров.Количество = Количество;

Регистр.ОстаткиТоваров.СуммаПоступления = Всего;

Регистр.ОстаткиТоваров.СуммаДокумент = Всего;

Регистр.ОстаткиТоваров.ФлагДвижения = 1;

Регистр.ОстаткиТоваров.ПривязыватьСтроку(НомерСтроки);

// Указав команду ПривязыватьСтроку() мы к каждой записи по движению

// регистра укажем - какая конкретно строка документа произвела это движение

Регистр.ОстаткиТоваров.ДвижениеПриходВыполнить();

// Добавляем запись о росте товарооборота

Регистр.ОборотыТоваров.Склад = Склад;

Регистр.ОборотыТоваров.Товар = Номенклатура;

Регистр.ОборотыТоваров.Количество = Количество;

Регистр.ОборотыТоваров.СуммаУчета = Всего;

Регистр.ОборотыТоваров.ФлагДвижения = 1;

Регистр.ОборотыТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОборотыТоваров.ДвижениеВыполнить();

КонецЦикла;

КонецПроцедуры

РеализацияТМЦ. Модуль формы

//___________________________________________________________

Функция ИтоговаяСтрока()

ИтСтр = "Итого получено на сумму: " + СокрЛ(Формат(Итог("Всего"),"Ч20.2-,")) + ", "+

"в т.ч. НДС: " + СокрЛ(Формат(Итог("НДС"),"Ч20.2-,"));

Возврат ИтСтр;

КонецФункции // ИтоговаяСтрока()

//____________________________________________________________

Процедура ПриОткрытии()

ПриЗаписиПерепроводить(1);

КонецПроцедуры //ПриОткрытии

//___________________________________________________________

Процедура ВводНового()

Налог = Константа.ОсновнаяСтавкаНДС.Получить(ДатаДок);

КонецПроцедуры //ВводНового

//__________________________________________________________

Процедура Пересчет(ИмяРеквизита)

Если (ИмяРеквизита = "Количество") или (ИмяРеквизита = "Цена") Тогда

СтавкаНДС = Налог;

Сумма = Количество * Цена;

Если НДССверху = 1 Тогда

НДС = Количество * Цена * СтавкаНДС.Ставка / 100;

Всего = Сумма + НДС;

Иначе

НДС = Количество * Цена * СтавкаНДС.Ставка / (100 + СтавкаНДС.Ставка);

Всего = Сумма;

КонецЕсли;

ИначеЕсли ИмяРеквизита = "Сумма" Тогда

Цена = ?(Количество = 0, Сумма, Сумма/Количество);

ИначеЕсли ИмяРеквизита = "НДС" Тогда

Если НДССверху = 1 Тогда

Всего = Сумма + НДС;

Иначе

Всего = Сумма;

КонецЕсли;

КонецЕсли;

КонецПроцедуры //Пересчет

//____________________________________________________________

//Вызывается при изменение метода расчета НДС - В сумме или сверху

Процедура ПересчетТаблЧасти()

Если КоличествоСтрок() > 0 Тогда

Если Вопрос("Пересчитать суммы табличной части?", "Да+Нет") = "Да" Тогда

Пересчет("Количество");

КонецЕсли;

КонецЕсли;

КонецПроцедуры //ПересчетТаблЧасти

//____________________________________________________________

Процедура ЗаполнитьЦеныНаДату()

ВыбратьСтроки();

Пока ПолучитьСтроку()=1 Цикл

Цена = Номенклатура.РозничнаяЦена.Получить(ДатаДок);

Пересчет("Цена");

КонецЦикла;

КонецПроцедуры //ЗаполнитьЦеныНаДату()

//____________________________________________________________

Процедура Подбор()

// Эта процедура запускается по нажатию кнопки [Подбор]

ОткрытьПодбор("Номенклатура","ДляПодбора");

// Инициализируем механизм подбора и указываем, что подбирать мы

// будем из справочника Номенклатура, используя форму списка "ДляПодбора"

УстановитьЗначениеВПодборе("Склад",Склады);

// В форму подбора в поле "Склад" передаем значение склада из

// текущего документа

КонецПроцедуры

//-----------------------------------------------

Процедура ОбработкаПодбора(ВыбТов)

// Предопределенная процедура, срабатывающая по событию - выбор

// элемента ВыбТов из справочника

КолОст=Регистр.ОстаткиТоваров.СводныйОстаток(Склады,ВыбТов,,"Количество");

// Проверим остаток

Если КолОст<=0 Тогда

Возврат;

// если остаток на складе отсутствует, завершаем процедуру

КонецЕсли;

ТабЗн1=СоздатьОбъект("ТаблицаЗначений");

// временная динамическая таблица

РегО=СоздатьОбъект("Регистр.ОстаткиТоваров");

РегО.УстановитьФильтр(Склады,ВыбТов);

// в копии регистра остатков нас будут интересовать

// итоги по конкретному складу и конкретному товару

РегО.ВыгрузитьИтоги(ТабЗн1,1,1);

// перегрузим итоги в д. таблицу

РегО="";

ТабЗн1.ВыбратьСтроки();

Пока ТабЗн1.ПолучитьСтроку()=1 Цикл

Остаток = ТабЗн1.Количество;

КонецЦикла;

НоваяСтрока();

// создаем в документе новую строку

Номенклатура = ВыбТов;

// заполняем поле "Товар"

ВыбСтрока = 1;

КолОст = ТабЗн1.ПолучитьЗначение(ВыбСтрока,"Количество");

КолВыб=0;

Если ВвестиЧисло(КолВыб,"Количесво "+ СокрЛП(ВыбТов.Наименование),8,2,0)=1 Тогда

//Введем нужное нам количество

Если КолВыб>КолОст Тогда

// сравним введенное нами количество с остатком

КолВыб=КолОст;

КонецЕсли;

Количество=КолВыб;

ЕдИз = Номенклатура.ЕдИзмерения;

Цена = Номенклатура.РозничнаяЦена.Получить(ДатаДок);

Пересчет("Количество");

КонецЕсли;

АктивизироватьСтроку();

// установим курсор в документе на строку, которую мы ввели

КонецПроцедуры

//____________________________________________________________

РеализацияТМЦ. Модуль документа.

Процедура ОбработкаПроведения()

РегОст=СоздатьОбъект("Регистр.ОстаткиТоваров");

Если СравнитьТА()=-1 Тогда

// Проверяем, не проводится ли документ ранее точки актуальности итогов

РегОст.ВременныйРасчет(1);

РассчитатьРегистрыНа(ТекущийДокумент());

КонецЕсли;

// Проверка на наличие на остатке

ВыбратьСтроки();

ФлагОтказа=0;

Пока (ПолучитьСтроку()>0) Цикл

Остат=РегОст.СводныйОстаток(Склады,Номенклатура,,"Количество");

Если Остат<Количество Тогда

Сообщить("На складе "+ Склады +" нет товара "+СокрЛП(Номенклатура.Наименование)+" в колич. "

+Количество+" (имеется "+Остат+")");

ФлагОтказа=1;

КонецЕсли;

КонецЦикла;

Если ФлагОтказа=1 Тогда

НеПроводитьДокумент();

Возврат;

КонецЕсли;

Регистр.Взаиморасчеты.Контрагент = Покупатель;

Регистр.Взаиморасчеты.Договор = Договора;

Регистр.Взаиморасчеты.Сумма = Итог("Всего");

Регистр.Взаиморасчеты.ФлагДвижения = 2;

Регистр.Взаиморасчеты.ДвижениеРасходВыполнить();

Если Константа.МетодСписания.Получить(ДатаДок)=Перечисление.МетодСписания.FIFO Тогда

ТабЗн1=СоздатьОбъект("ТаблицаЗначений");

ТабЗн2=СоздатьОбъект("ТаблицаЗначений");

ТабЗн2.НоваяКолонка("Партия","Документ.ПриходнаяНакладная");

ТабЗн2.НоваяКолонка("КоличествоП","Число",14,2);

ТабЗн2.НоваяКолонка("СуммаП","Число",19,2);

ВыбратьСтроки();

Пока ПолучитьСтроку() = 1 Цикл

КолВыб=Количество;

РегОст.УстановитьФильтр(Склады,Номенклатура);

РегОст.ВыгрузитьИтоги(ТабЗн1,1,1);

ТабЗн1.Свернуть("3","4,5");

// а здесь интересно: Структура ТабЗн1 после выгрузки будет аналогична

// структуре регистра. Реквизит "Партия" в регистре стоит на 3-ей

// позиции, значит и колонка "Партия" - 3-ая, Колонки "Количество"

// и "СуммаП" - соответственно 4-ая и 5-ая

ТабЗн1.ВыбратьСтроки();

Пока ТабЗн1.ПолучитьСтроку()=1 Цикл

Прт=ТабЗн1.Партия;

Ост=ТабЗн1.Количество;

Сум=ТабЗн1.СуммаПоступления;

Если Ост>0 Тогда // есть что проверять

ТабЗн2.НоваяСтрока();

ТабЗн2.Партия=Прт;

ТабЗн2.КоличествоП=Ост;

ТабЗн2.СуммаП=Сум;

КонецЕсли;

КонецЦикла;

// Заполняем промежуточную таблицу

ТабЗн1.Очистить();

// Удаляем все записи и колонки из ТабЗн1

ТабЗн2.Сортировать("1+",1);

// Сортируем по документам в порядке возрастания даты (FIFO)

// Более ранние партии вверху

ТабЗн2.ВыбратьСтроки();

Пока ТабЗн2.ПолучитьСтроку()=1 Цикл

Ост=ТабЗн2.КоличествоП;

Сум=ТабЗн2.СуммаП;

ЦенаПП=Окр(Сум/Ост,2,1);

// определяем цену текущей партии

Парт=ТабЗн2.Партия;

// а вот и сама партия

Если КолВыб>Ост Тогда // Ост

// требуемое количество больше, чем остатки в текущей партии,

// здесь спишем сколько есть, а что осталось, из более поздней

// партии

Регистр.ОстаткиТоваров.Склад = Склады;

Регистр.ОстаткиТоваров.Товар = Номенклатура;

Регистр.ОстаткиТоваров.Партия = Парт;

Регистр.ОстаткиТоваров.Количество = Ост;

Регистр.ОстаткиТоваров.СуммаПоступления = Окр(ЦенаПП*Ост,2,1);

Регистр.ОстаткиТоваров.СуммаДокумент = Окр(Цена*Ост,2,1);

Регистр.ОстаткиТоваров.ФлагДвижения = 1;

Регистр.ОстаткиТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОстаткиТоваров.ДвижениеРасходВыполнить();

Регистр.ОборотыТоваров.Склад = Склады;

Регистр.ОборотыТоваров.Товар = Номенклатура;

Регистр.ОборотыТоваров.Количество = Ост;

Регистр.ОборотыТоваров.СуммаУчета = Окр(ЦенаПП*Ост,2,1);

Регистр.ОборотыТоваров.ФлагДвижения = 1;

Регистр.ОборотыТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОборотыТоваров.ДвижениеВыполнить();

КолВыб=КолВыб-Ост;

// это сколько остатков нам не хватает до полного счастья

Иначе

// В партии товара больше, чем мы запрашиваем.

// Списываем сколько запрашиваем

Если КолВыб>0 Тогда // КолВыб

Регистр.ОстаткиТоваров.Склад = Склады;

Регистр.ОстаткиТоваров.Товар = Номенклатура;

Регистр.ОстаткиТоваров.Партия = Парт;

Регистр.ОстаткиТоваров.Количество = КолВыб;

Регистр.ОстаткиТоваров.СуммаПоступления = Окр(ЦенаПП*КолВыб,2,1);

Регистр.ОстаткиТоваров.СуммаДокумент = Окр(Цена*КолВыб,2,1);

Регистр.ОстаткиТоваров.ФлагДвижения = 1;

Регистр.ОстаткиТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОстаткиТоваров.ДвижениеРасходВыполнить();

Регистр.ОборотыТоваров.Склад = Склады;

Регистр.ОборотыТоваров.Товар = Номенклатура;

Регистр.ОборотыТоваров.Количество = КолВыб;

Регистр.ОборотыТоваров.СуммаУчета = Окр(ЦенаПП*КолВыб,2,1);

Регистр.ОборотыТоваров.ФлагДвижения = 1;

Регистр.ОборотыТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОборотыТоваров.ДвижениеВыполнить();

КолВыб=КолВыб-Ост;

КонецЕсли;

КонецЕсли;

КонецЦикла;

ТабЗн2.УдалитьСтроки();

// удаляем строки из временной таблицы.

// Готовим ее под следующую строку документа

КонецЦикла;

ИначеЕсли Константа.МетодСписания.Получить(ДатаДок)=Перечисление.МетодСписания.LIFO Тогда

ВыбратьСтроки();

Пока ПолучитьСтроку()=1 Цикл

КолСпис=Количество;

Запрос="";

ТекстЗапроса="";

Если ИтогиАктуальны()=0 Тогда

ТекстЗапроса="

|Период с ДатаДок по ДатаДок;";

КонецЕсли;

ТекстЗапроса=ТекстЗапроса+"

|РегСклад=Регистр.ОстаткиТоваров.Склад;

|РегТовар=Регистр.ОстаткиТоваров.Товар;

|РегПартия=Регистр.ОстаткиТоваров.Партия;

|РегКолич=Регистр.ОстаткиТоваров.Количество;

|РегСумма=Регистр.ОстаткиТоваров.СуммаПоступления;

|Группировка РегПартия Упорядочить по РегПартия.ДатаДок;

|Функция КолКонОст=КонОст(РегКолич);

|Функция СумКонОст=КонОст(РегСумма);

|Условие (РегСклад=Склады);

|Условие (РегТовар=Номенклатура);";

Запрос=СоздатьОбъект("Запрос");

Если Запрос.Выполнить(ТекстЗапроса)=0 Тогда

Сообщить("Документ не проведен");

НеПроводитьДокумент();

Возврат;

КонецЕсли;

Пока Запрос.Группировка("РегПартия",-1)=1 Цикл

// В методе Группировка флаг -1 указывает, что сортировка по запросу

// идет в порядке убывания. Более поздние документы идут первыми

Если КолСпис=0 Тогда

Прервать;

КонецЕсли;

ПартияСписания=Запрос.РегПартия;

Если Запрос.КолКонОст>КолСпис Тогда

Списывать=КолСпис;

Стоимость=Окр((Запрос.СумКонОст/Запрос.КолКонОст)*Списывать,2,1);

ИначеЕсли Запрос.КолКонОст=КолСпис Тогда

Списывать=КолСпис;

Стоимость=Запрос.СумКонОст;

ИначеЕсли Запрос.КолКонОст<КолСпис Тогда

Списывать=Запрос.КолКонОст;

Стоимость=Запрос.СумКонОст;

КонецЕсли;

КолСпис=КолСпис-Списывать;

Регистр.ОстаткиТоваров.Склад = Склады;

Регистр.ОстаткиТоваров.Товар = Номенклатура;

Регистр.ОстаткиТоваров.Партия = ПартияСписания;

Регистр.ОстаткиТоваров.Количество = Списывать;

Регистр.ОстаткиТоваров.СуммаПоступления = Стоимость;

Регистр.ОстаткиТоваров.СуммаДокумент = Окр(Цена*Списывать,2,1);

Регистр.ОстаткиТоваров.ФлагДвижения = 1;

Регистр.ОстаткиТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОстаткиТоваров.ДвижениеРасходВыполнить();

Регистр.ОборотыТоваров.Склад = Склады;

Регистр.ОборотыТоваров.Товар = Номенклатура;

Регистр.ОборотыТоваров.Количество = Списывать;

Регистр.ОборотыТоваров.СуммаУчета = Стоимость;

Регистр.ОборотыТоваров.ФлагДвижения = 1;

Регистр.ОборотыТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОборотыТоваров.ДвижениеВыполнить();

КонецЦикла;

КонецЦикла;

ИначеЕсли Константа.МетодСписания.Получить(ДатаДок)=Перечисление.МетодСписания.СредняяЦена Тогда

// Здесь будет записана методика списания по-среднему

ВыбратьСтроки();

Пока ПолучитьСтроку() = 1 Цикл

КолОст=РегОст.СводныйОстаток(Склады,Номенклатура,,"Количество");

// Получаем суммарный остаток по указанным измерениям

// по данному ресурсу

СумОст=РегОст.СводныйОстаток(Склады,Номенклатура,,"СуммаПоступления");

ЦенОст=Окр(СумОст/КолОст,2,1);

Парт=ПолучитьПустоеЗначение("Документ.ПриходнаяНакладная");

// А это, что-бы заполнить хоть чем-нибудь измерение "Партия"

Регистр.ОстаткиТоваров.Склад = Склады;

Регистр.ОстаткиТоваров.Товар = Номенклатура;

Регистр.ОстаткиТоваров.Партия = Парт;

Регистр.ОстаткиТоваров.Количество = Количество;

Регистр.ОстаткиТоваров.СуммаПоступления = Окр(ЦенОст*Количество,2,1);

Регистр.ОстаткиТоваров.СуммаДокумент = Окр(Цена*Количество,2,1);

Регистр.ОстаткиТоваров.ФлагДвижения = 1;

Регистр.ОстаткиТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОстаткиТоваров.ДвижениеРасходВыполнить();

Регистр.ОборотыТоваров.Склад = Склады;

Регистр.ОборотыТоваров.Товар = номенклатура;

Регистр.ОборотыТоваров.Количество = Количество;

Регистр.ОборотыТоваров.СуммаУчета = Окр(ЦенОст*Количество,2,1);

Регистр.ОборотыТоваров.ФлагДвижения = 1;

Регистр.ОборотыТоваров.ПривязыватьСтроку(НомерСтроки);

Регистр.ОборотыТоваров.ДвижениеВыполнить();

КонецЦикла;

КонецЕсли;

//{{ФОРМИРОВАНИЕ_ОПЕРАЦИИ

//Данный фрагмент построен конструктором.

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

//ВыбратьСтроки();

//Пока ПолучитьСтроку() = 1 Цикл

// Операция.НоваяПроводка();

// Операция.Дебет.Счет = СчетПоКоду("90.2.1",ПланыСчетов.Основной);

// Операция.Дебет.Товары = Товары;

//

// Операция.Кредит.Счет = СчетПоКоду("41.1",ПланыСчетов.Основной);

// Операция.Кредит.Товары = Товары;

// Операция.Кредит.Склады = Склады;

//

// Операция.Количество = Количество;

// Операция.Сумма = Сумма;

//

// Операция.НоваяПроводка();

// Операция.Дебет.Счет = СчетПоКоду("62.1",ПланыСчетов.Основной);

// Операция.Дебет.Контрагент = Покупатель;

// Операция.Дебет.Договора = Договора;

//

// Операция.Кредит.Счет = СчетПоКоду("90.1.1",ПланыСчетов.Основной);

// Операция.Кредит.Товары = Товары;

//

// Операция.Сумма = Сумма;

//КонецЦикла;

//Операция.СуммаОперации = Итог("Сумма");

//Операция.Записать();

//}}ФОРМИРОВАНИЕ_ОПЕРАЦИИ

//Расчет отстатков с помощью таблицы значений

//СписокТоваров = СоздатьОбъект("СписокЗначений");

//ВыгрузитьТабличнуюЧасть(СписокТоваров, "Товар");

//БухИт = СоздатьОбъект("БухгалтерскиеИтоги");

//БухИт.ИспользоватьСубконто(ВидыСубконто.Товары, СписокТоваров, 2);

//БухИт.ИспользоватьСубконто(ВидыСубконто.Склады);

//БухИт.ВключатьСубсчета(-1);

//БухИт.ВыполнитьЗапрос(,ТекущийДокумент(),"10",,,,,"СК");

//

//БИ_НУ = СоздатьОбъект("БухгалтерскиеИтоги");

//БИ_НУ.ИспользоватьСубконто(ВидыСубконто.Товары, СписокТоваров, 2);

//БИ_НУ.ВыполнитьЗапрос(,ТекущийДокумент(), "Н02.01",,,,, "СК");

//ТаблицаОстатков = СоздатьОбъект("ТаблицаЗначений");

//ВыгрузитьТабличнуюЧасть(ТаблицаОстатков, "Товар, Количество");

//ТаблицаОстатков.Свернуть("Товар", "Количество");

//ТаблицаОстатков.НоваяКолонка("КоличествоНаСкладах", "Число");

//ТаблицаОстатков.НоваяКолонка("СуммаНаСкладах", "Число");

//ТаблицаОстатков.НоваяКолонка("СредняяСтоимость", "Число");

//ТаблицаОстатков.НоваяКолонка("КоличествоНаСкладахНУ", "Число");

//ТаблицаОстатков.НоваяКолонка("СуммаНаСкладахНУ", "Число");

//ТаблицаОстатков.ВыбратьСтроки();

//Пока ТаблицаОстатков.ПолучитьСтроку() = 1 Цикл

// КоличествоНаСкладе = 0;

// Если ТаблицаОстатков.Товар.Вид() = "Товары" Тогда

// Если БухИт.ПолучитьСчет(, ТаблицаОстатков.Товар.СубСчет41) = 1 Тогда

// Если БухИт.ПолучитьСубконто(ВидыСубконто.Товары,, ТаблицаОстатков.Товар) = 1 Тогда

// ТаблицаОстатков.СуммаНаСкладах = Макс(БухИт.СКД("С"), 0);

// ТаблицаОстатков.КоличествоНаСкладах = БухИт.СКД("К");

// Если БухИт.ПолучитьСубконто(ВидыСубконто.Склады,, Склады) = 1 Тогда

// КоличествоНаСкладе = БухИт.СКД("К");

// КонецЕсли;

// КонецЕсли;

// КонецЕсли;

// КонецЕсли;

// КонецЦикла;

КонецПроцедуры

Размещено на Allbest.ru


Подобные документы

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

    курсовая работа [67,5 K], добавлен 06.12.2012

  • Оценка уровня выполнения плана, динамики производства и реализации продукции. Анализ качества продукции и ритмичности работы предприятия. Определение внутрихозяйственных резервов роста выпуска продукции, обзор мероприятий по освоению выявленных резервов.

    курсовая работа [1,9 M], добавлен 31.03.2012

  • Анализ динамики и выполнения плана производства и реализации продукции. Показатели качества продукции. Расчет ритмичности работы предприятия. Анализ выполнения договорных обязательств и реализации продукции. Оценка имущественного и финансового состояния.

    курсовая работа [106,9 K], добавлен 26.11.2011

  • Диагностика имущественного положения предприятия. Оценка структуры капитала, вложенного в имущество. Анализ обеспеченности предприятия собственными оборотными средствами и эффективности их использования. Диагностика ликвидности и платежеспособности.

    отчет по практике [94,8 K], добавлен 25.09.2014

  • Основные направления анализа ассортимента продукции. Оценка ритмичности работы предприятия. Анализ качества произведенной продукции и потерь от брака. Методы исследования объема производства и реализации продукции на примере предприятия ООО "Мебель".

    курсовая работа [97,1 K], добавлен 15.01.2015

  • Анализ динамики реализации продукции. Задачи, основные направления и информационная база исследования. Оценка ритмичности работы предприятия, качества продукции и факторов изменения ее реализации. Ассортимент и структура товара предприятия "Наутилус".

    курсовая работа [46,1 K], добавлен 24.04.2011

  • Показатели финансового состояния предприятия. Анализ ликвидности и платежеспособности. Анализ доходности собственного капитала и финансового результата деятельности предприятия. Оценка качества состава оборотных средств. Показатели деловой активности.

    курсовая работа [89,1 K], добавлен 08.06.2009

  • История создания и структура группы компания "Авега", цели, задачи и виды их деятельности. Анализ и оценка основных технико-экономических показателей деятельности ООО "Атлант-Техно", особенности его государственного регулирования его функционирования.

    отчет по практике [337,2 K], добавлен 08.10.2010

  • Анализ объема и ассортимента продукции, оценка ее себестоимости. Состав и динамика балансовой прибыли. Доходы и расходы от внереализационных операций. Рентабельность основной деятельности, продаж и основного капитала. Рыночная устойчивость предприятия.

    курсовая работа [68,8 K], добавлен 19.09.2012

  • Оценка изменения выпуска продукции. Расчет влияния качества продукции на стоимостные показатели работы предприятия. Разработка мер по улучшению потребительских качеств экспортной продукции с целью повышения ее конкурентоспособности на внешних рынках.

    курсовая работа [247,5 K], добавлен 09.03.2015

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.