|
v7: Помогите с формулой расчета! | ☑ | ||
---|---|---|---|---|
0
kambar93
31.05.12
✎
11:11
|
Не могу сформулировать формулу, документ - закрытие месяца!
вот к примеру: А2 = Цена продукции; А3 = Кол-во выпуска; А4 = СуммаПоЦене продукции (А2 * А3) А5 = Затраты Вот такая формула нужна! А5.47228 / А4.291525 * А5.47228 вот такой код на 1ске СуммаПоЦене = СуммаПоЦене + (Цен * ВыпускБезПолуф) Коэф = (Цен * ВыпускБезПолуф) * 100 / СуммаПоЦене / 100; Номен.сч1=Счетпокоду("221.1") Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.1"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.5"); Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; Операция.Записать(); |
|||
1
vicof
31.05.12
✎
11:17
|
Зачем тебе в школе 1с?
|
|||
2
chief accountant
31.05.12
✎
11:19
|
(1) готовится вернуться в Россию после окончания школы и стать одноэсником
|
|||
3
palpetrovich
31.05.12
✎
11:24
|
а что такое А5.47228 ?
А5.47228 = А5 + 0.47228? |
|||
4
kambar93
31.05.12
✎
11:46
|
47228 / 291525 * 47228
эту формулу нужно в 1ске написать, пожалуйста помогите! |
|||
5
palpetrovich
31.05.12
✎
11:53
|
(4) Результат = 47228 / 291525 * 47228;
дарю ;) |
|||
6
kambar93
31.05.12
✎
11:55
|
нее(((
|
|||
7
kambar93
31.05.12
✎
11:55
|
//******************************************************************************
Перем СуммаЦен; Перем Коэф; //****************************************************************************** Процедура ОбработкаПроведения(Значение) ДатаНач = НачМесяца(ДатаДок); ДатаКон = КонМесяца(ДатаДок); //Док = СоздатьОбъект("Документ.Закрытиемесяца"); //Док.ВыбратьДокументы(ДатаНач, ДатаКон); БвИ = СоздатьОбъект("БухгалтерскиеИтоги"); БвИ.Периодм(ДатаКон); БИ = СоздатьОбъект("БухгалтерскиеИтоги"); БИ.Периодм(ДатаКон); сч = СоздатьОбъект("Счет.Основной"); Если БвИ.ДО(СчетПоКоду("931")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("931"); Операция.Сумма = БвИ.ДО(СчетПоКоду("931")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("932")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("932"); Операция.Сумма = БвИ.ДО(СчетПоКоду("932")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("933")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("933"); Операция.Сумма = БвИ.ДО(СчетПоКоду("933")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("934")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("934"); Операция.Сумма = БвИ.ДО(СчетПоКоду("934")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("935")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("935"); Операция.Сумма = БвИ.ДО(СчетПоКоду("935")); Операция.Записать(); КонецЕсли; //Если БвИ.ДО(СчетПоКоду("936")) > 0 Тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.5"); // Операция.Дебет.ЭлементыЗатрат = Константа.ЭЗ_ПрочиеЗатраты; // Операция.Кредит.Счет=СчетПоКоду("936"); // Операция.Сумма = БвИ.ДО(СчетПоКоду("936")); // Операция.Записать(); //КонецЕсли; Если БвИ.ДО(СчетПоКоду("937")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("937"); Операция.Сумма = БвИ.ДО(СчетПоКоду("937")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("938")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("930"); Операция.Кредит.Счет=СчетПоКоду("938"); Операция.Сумма = БвИ.ДО(СчетПоКоду("938")); Операция.Записать(); КонецЕсли; //Если БвИ.ДО(СчетПоКоду("930")) > 0 Тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.5"); // Операция.Дебет.ЭлементыЗатрат = Константа.ЭЗ_ПрочиеЗатраты; // Операция.Кредит.Счет=СчетПоКоду("930"); // Операция.Сумма = БвИ.ДО(СчетПоКоду("930")); // Операция.Записать(); //КонецЕсли; Если БвИ.ДО(СчетПоКоду("634.1")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("821.2"); Операция.Кредит.Счет=СчетПоКоду("634.1"); Операция.Сумма = БвИ.ДО(СчетПоКоду("634.1")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("634.2")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("821.2"); Операция.Кредит.Счет=СчетПоКоду("634.2"); Операция.Сумма = БвИ.ДО(СчетПоКоду("634.2")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("904")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.5"); Операция.Дебет.ЭлементыЗатрат = Константа.ЭЗ_ПрочиеЗатраты; Операция.Кредит.Счет=СчетПоКоду("904"); Операция.Сумма = БвИ.ДО(СчетПоКоду("904")) - БвИ.КО(СчетПоКоду("904")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("901")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.5"); Операция.Дебет.ЭлементыЗатрат = Константа.ЭЗ_ПрочиеЗатраты; Операция.Кредит.Счет=СчетПоКоду("901"); Операция.Сумма = БвИ.ДО(СчетПоКоду("901")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("902")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.5"); Операция.Дебет.ЭлементыЗатрат = Константа.ЭЗ_ПрочиеЗатраты; Операция.Кредит.Счет=СчетПоКоду("902"); Операция.Сумма = БвИ.ДО(СчетПоКоду("902")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("903")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.4"); Операция.Дебет.ЭлементыЗатрат = Константа.ЭЗ_ПрочиеЗатраты; Операция.Кредит.Счет=СчетПоКоду("903"); Операция.Сумма = БвИ.ДО(СчетПоКоду("903")); Операция.Записать(); КонецЕсли; /// Номенклатура = СоздатьОбъект("СписокЗначений"); Сумма = СоздатьОбъект("СписокЗначений"); Выпуск = СоздатьОбъект("СписокЗначений"); Полуфабрикаты = СоздатьОбъект("СписокЗначений"); Цена = СоздатьОбъект("СписокЗначений"); //////АктСписанияВин = СоздатьОбъект("Документ._03_АктСписанияВодки"); //////АктСписанияВин.ВыбратьДокументы(НачМесяца(ДатаДок), КонМесяца(ДатаДок)); //////Пока АктСписанияВин.ПолучитьДокумент() = 1 Цикл ////// Если АктСписанияВин.ПометкаУдаления() = 0 Тогда ////// Если АктСписанияВин.Проведен() = 1 Тогда ////// АктСписанияВин.ВыбратьСтроки(); ////// Пока АктСписанияВин.ПолучитьСтроку() = 1 Цикл ////// Если АктСписанияВин.Атрибут = Перечисление.ВидВыпуска.Завершено Тогда ////// //Выпуск ////// Если АктСписанияВин.Вып = 0 Тогда ////// Сообщить("Нет выпуска продукции: документ - " + АктСписанияВин); ////// КонецЕсли; ////// Номен = АктСписанияВин.Номенклатура; ////// Цен = Номен.Цена.Получить(НачМесяца(ДатаДок)); ////// Колич = АктСписанияВин.Вып; ////// Вино = АктСписанияВин.Сумма2; ////// Позиция = Номенклатура.НайтиЗначение(Номен); ////// Если Позиция = 0 Тогда ////// Номенклатура.ДобавитьЗначение(Номен, Номен); ////// Цена.ДобавитьЗначение(Цен, Номен); ////// Сумма.ДобавитьЗначение(0, Номен); ////// Выпуск.ДобавитьЗначение(Колич, Номен); ////// Полуфабрикаты.ДобавитьЗначение(0, Номен); ////// Иначе ////// Стр = ""; ////// Значение = Выпуск.ПолучитьЗначение(Позиция, Стр); ////// Значение = Значение + Колич; ////// Выпуск.УстановитьЗначение(Позиция, Значение, Номен); ////// КонецЕсли; ////// Иначе ////// //Полуфабрикаты ////// Если АктСписанияВин.Вып = 0 Тогда ////// Сообщить("Нет выпуска продукции: документ - " + АктСписанияВин); ////// КонецЕсли; ////// Номен = АктСписанияВин.Номенклатура; ////// Цен = Номен.Цена.Получить(НачМесяца(ДатаДок)); ////// Колич = АктСписанияВин.Вып; ////// Вино = АктСписанияВин.Сумма2; ////// Позиция = Номенклатура.НайтиЗначение(Номен); ////// Если Позиция = 0 Тогда ////// Номенклатура.ДобавитьЗначение(Номен, Номен); ////// Цена.ДобавитьЗначение(Цен, Номен); ////// Сумма.ДобавитьЗначение(0, Номен); ////// Выпуск.ДобавитьЗначение(0, Номен); ////// Полуфабрикаты.ДобавитьЗначение(Колич, Номен); ////// Иначе ////// Стр = ""; ////// Значение = Полуфабрикаты.ПолучитьЗначение(Позиция, Стр); ////// Значение = Значение + Колич; ////// Полуфабрикаты.УстановитьЗначение(Позиция, Значение, Номен); ////// КонецЕсли; ////// КонецЕсли; ////// КонецЦикла; ////// КонецЕсли; ////// КонецЕсли; //////КонецЦикла; /////нач АктСписанияВин = СоздатьОбъект("Документ._03_АктСписанияМатериалов"); АктСписанияВин.ВыбратьДокументы(НачМесяца(ДатаДок), КонМесяца(ДатаДок)); Пока АктСписанияВин.ПолучитьДокумент() = 1 Цикл Если АктСписанияВин.ПометкаУдаления() = 0 Тогда Если АктСписанияВин.Проведен() = 1 Тогда Номен = АктСписанияВин.Номенклатура; Колич = АктСписанияВин.Количество; ////АктСписанияВин.ВыбратьСтроки(); ////Пока АктСписанияВин.ПолучитьСтроку() = 1 Цикл //Выпуск Если Колич = 0 Тогда Сообщить("Нет выпуска продукции: документ - " + АктСписанияВин); КонецЕсли; Цен = Номен.Цена.Получить(НачМесяца(ДатаДок)); Позиция = Номенклатура.НайтиЗначение(Номен); Если Позиция = 0 Тогда Номенклатура.ДобавитьЗначение(Номен, Номен); Цена.ДобавитьЗначение(Цен, Номен); Сумма.ДобавитьЗначение(0, Номен); Выпуск.ДобавитьЗначение(Колич, Номен); Полуфабрикаты.ДобавитьЗначение(0, Номен); Иначе Стр = ""; Значение = Выпуск.ПолучитьЗначение(Позиция, Стр); Значение = Значение + Колич; Выпуск.УстановитьЗначение(Позиция, Значение, Номен); КонецЕсли; ////КонецЦикла; КонецЕсли; КонецЕсли; КонецЦикла; ///////кон ////3 Расчет по документам "Перемещение вин" //Сообщить("Расчет по документам ""Перемещение вин""", "!"); // //ПеремещениеВин = СоздатьОбъект("Документ._03_ПеремещениеВин"); //ПеремещениеВин.ВыбратьДокументы(НачМесяца(ДатаДок), КонМесяца(ДатаДок)); //Пока ПеремещениеВин.ПолучитьДокумент() = 1 Цикл // Если ПеремещениеВин.ПометкаУдаления() = 0 Тогда // Если ПеремещениеВин.Проведен() = 1 Тогда // ПеремещениеВин.ВыбратьСтроки(); // Пока ПеремещениеВин.ПолучитьСтроку() = 1 Цикл // Если ПеремещениеВин.Вып = 0 Тогда // Сообщить("Нет выпуска продукции: документ - " + ПеремещениеВин); // КонецЕсли; // Номен = ПеремещениеВин.материал; // Цен = Номен.Цена.Получить(НачМесяца(ДатаДок)); // Колич = ПеремещениеВин.Вып; // Позиция = Номенклатура.НайтиЗначение(Номен); // Если Позиция = 0 Тогда // Номенклатура.ДобавитьЗначение(Номен, Номен); // Цена.ДобавитьЗначение(Цен, Номен); // Сумма.ДобавитьЗначение(0, Номен); // Выпуск.ДобавитьЗначение(0, Номен); // Полуфабрикаты.ДобавитьЗначение(0, Номен); // ИзПолуфабрикатов.ДобавитьЗначение(Колич, Номен); // Виноматериал.ДобавитьЗначение(0, Номен); // Иначе // Стр = ""; // Значение = ИзПолуфабрикатов.ПолучитьЗначение(Позиция, Стр); // Значение = Значение + Колич; // ИзПолуфабрикатов.УстановитьЗначение(Позиция, Значение, Номен); // КонецЕсли; // КонецЦикла; // КонецЕсли; // КонецЕсли; //КонецЦикла; //4 Расчет по документам "Акт списания материалов" //Сообщить("Расчет по документам ""Акт списания материалов""", "!"); ВсегоМатериалов = 0; Размер = Номенклатура.РазмерСписка(); Ном = СоздатьОбъект("Справочник.Номенклатура"); Ном.ВыбратьЭлементы(); //Расчет суммы (по цене) для разложения затрат в процентом отношении СуммаПоЦене = 0; СчетчикЦикла = 0; Для СчетчикЦикла = 1 По Размер Цикл Стр = ""; Цен = Цена.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускБезПолуф = Выпуск.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускПолуф = Полуфабрикаты.ПолучитьЗначение(СчетчикЦикла, Стр); РасчетныйВыпуск = 0; РасчетныйВыпуск = ВыпускБезПолуф + ВыпускПолуф; //Если РасчетныйВыпуск > 0 Тогда //СуммаПоЦене = СуммаПоЦене + (Цен * РасчетныйВыпуск); СуммаПоЦене = СуммаПоЦене + (Цен * ВыпускБезПолуф); СуммаПоЦене = СуммаПоЦене + (Цен * ВыпускПолуф); //КонецЕсли; КонецЦикла; //Сообщить("общ="+СуммаПоЦене); СчетчикЦикла = 0; Для СчетчикЦикла = 1 По Размер Цикл Стр = ""; МатериаловПоПродукции = 0; Материалы = СоздатьОбъект("СписокЗначений"); СуммаМатериалы = СоздатьОбъект("СписокЗначений"); КоличМатериалы = СоздатьОбъект("СписокЗначений"); Номен = Номенклатура.ПолучитьЗначение(СчетчикЦикла, Стр); Цен = Цена.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускБезПолуф = Выпуск.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускПолуф = Полуфабрикаты.ПолучитьЗначение(СчетчикЦикла, Стр); РасчетныйВыпуск = ВыпускБезПолуф + ВыпускПолуф; //сообщить(Номен.Наименование+" "+Цен+" "+ВыпускБезПолуф+" к="+цен*ВыпускБезПолуф/СуммаПоЦене); Если ВыпускБезПолуф > 0 Тогда Коэф = (Цен * ВыпускБезПолуф) * 100 / СуммаПоЦене / 100; Если Номен.сч1=Счетпокоду("221.0") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.0"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.4"); Операция.Сумма=бви.ДО(СчетПоКоду("900.4")) * Коэф; Операция.Записать(); конецесли; если Номен.сч1=Счетпокоду("221.1") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.1"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.5"); Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; Операция.Записать(); конецесли; //если Номен.сч1=Счетпокоду("221.2") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.2"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; КонецЕсли; Если ВыпускПолуф > 0 Тогда Коэф = (Цен * ВыпускПолуф) * 100 / СуммаПоЦене / 100; Если Номен.сч1=Счетпокоду("221.0") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.0"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.4"); Операция.Сумма=бви.ДО(СчетПоКоду("900.4")) * Коэф; Операция.Записать(); конецесли; если Номен.сч1=Счетпокоду("221.1") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.1"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.5"); Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; Операция.Записать(); конецесли; //если Номен.сч1=Счетпокоду("221.2") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.2"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; КонецЕсли; //Коэф = (Цен * РасчетныйВыпуск) * 100 / СуммаПоЦене / 100; //Если Номен.сч1=Счетпокоду("221.0") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.0"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; //если Номен.сч1=Счетпокоду("221.1") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.1"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; //если Номен.сч1=Счетпокоду("221.2") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.2"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; КонецЦикла; //// //Номен = СоздатьОбъект("Справочник.Номенклатура"); //Номен.ВыбратьЭлементы(); //Пока Номен.ПолучитьЭлемент() = 1 Цикл // Номен.сум = 0; // Номен.Записать(); //КонецЦикла; // //СуммаЦен = 0; //Док = СоздатьОбъект("Документ._03_АктСписанияВин"); //Док.ВыбратьДокументы(НачМесяца(ДатаДок), КонМесяца(ДатаДок)); //Пока Док.ПолучитьДокумент() = 1 Цикл // Если Док.ПометкаУдаления() = 0 Тогда // Если Док.Проведен() = 1 Тогда // Док.ВыбратьСтроки(); // Пока Док.ПолучитьСтроку()=1 цикл // Если Номен.НайтиЭлемент(Док.Номенклатура) = 1 Тогда // СуммаЦен = СуммаЦен + Док.Номенклатура.Цена.Получить(ДатаДок) * Док.вып; // Номен.сум = Номен.сум + Док.Номенклатура.Цена.Получить(ДатаДок) * Док.вып; // Номен.Записать(); // КонецЕсли // КонецЦикла; // КонецЕсли; // КонецЕсли; //КонецЦикла; // //ПеремещениеВин = СоздатьОбъект("Документ._03_ПеремещениеВин"); //ПеремещениеВин.ВыбратьДокументы(НачМесяца(ДатаДок), КонМесяца(ДатаДок)); //Пока ПеремещениеВин.ПолучитьДокумент() = 1 Цикл // Если ПеремещениеВин.ПометкаУдаления() = 0 Тогда // Если ПеремещениеВин.Проведен() = 1 Тогда // ПеремещениеВин.ВыбратьСтроки(); // Пока ПеремещениеВин.ПолучитьСтроку() = 1 Цикл // Если Номен.НайтиЭлемент(ПеремещениеВин.Материал) = 1 Тогда // СуммаЦен = СуммаЦен + ПеремещениеВин.Материал.Цена.Получить(ДатаДок) * ПеремещениеВин.вып; // Номен.сум = Номен.сум + ПеремещениеВин.Материал.Цена.Получить(ДатаДок) * ПеремещениеВин.вып; // Номен.Записать(); // КонецЕсли // КонецЦикла; // КонецЕсли; // КонецЕсли; //КонецЦикла; // //Если СуммаЦен > 0 Тогда // Номен.ВыбратьЭлементы(); // Пока Номен.ПолучитьЭлемент() = 1 Цикл // Если Номен.сум > 0 Тогда // Коэф = Номен.сум * 100 / СуммаЦен / 100; // Если Коэф = 100 Тогда // Коэф = 1; // КонецЕсли; // // Если Номен.текущийЭлемент().сч1=Счетпокоду("221.0") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.0"); // операция.дебет.Номенклатура = Номен.текущийЭлемент(); // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Проба = Проба + (бви.ДО(СчетПоКоду("900.5")) * Коэф); // Операция.Записать(); // конецесли; // // если Номен.текущийЭлемент().сч1=Счетпокоду("221.1") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.1"); // операция.дебет.Номенклатура = Номен.текущийЭлемент(); // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Проба = Проба + (бви.ДО(СчетПоКоду("900.5")) * Коэф); // Операция.Записать(); // конецесли; // // если Номен.текущийЭлемент().сч1=Счетпокоду("221.2") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.2"); // операция.дебет.Номенклатура = Номен.текущийЭлемент(); // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Проба = Проба + (бви.ДО(СчетПоКоду("900.5")) * Коэф); // Операция.Записать(); // конецесли; // КонецЕсли; // КонецЦикла; //КонецЕсли; Если БвИ.ДО(СчетПоКоду("802")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("802"); Операция.Сумма = БвИ.ДО(СчетПоКоду("802")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("803")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("803"); Операция.Сумма = БвИ.ДО(СчетПоКоду("803")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("804")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("804"); Операция.Сумма = БвИ.ДО(СчетПоКоду("804")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("805")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("805"); Операция.Сумма = БвИ.ДО(СчетПоКоду("805")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("806")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("806"); Операция.Сумма = БвИ.ДО(СчетПоКоду("806")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("807")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("807"); Операция.Сумма = БвИ.ДО(СчетПоКоду("807")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("808")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("808"); Операция.Сумма = БвИ.ДО(СчетПоКоду("808")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("811.0")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("811.0"); Операция.Сумма = БвИ.ДО(СчетПоКоду("811.0")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("811.1")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("811.1"); Операция.Сумма = БвИ.ДО(СчетПоКоду("811.1")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("811.2")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("811.2"); Операция.Сумма = БвИ.ДО(СчетПоКоду("811.2")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("811.3")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("811.3"); Операция.Сумма = БвИ.ДО(СчетПоКоду("811.3")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("811.4")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("811.4"); Операция.Сумма = БвИ.ДО(СчетПоКоду("811.4")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("861")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("861"); Операция.Сумма = БвИ.ДО(СчетПоКоду("861")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("862")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("571"); Операция.Кредит.Счет=СчетПоКоду("862"); Операция.Сумма = БвИ.ДО(СчетПоКоду("862")); Операция.Записать(); КонецЕсли; Если БвИ.ДО(СчетПоКоду("634.4")) > 0 Тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("821.2"); Операция.Кредит.Счет=СчетПоКоду("634.4"); Операция.Сумма = БвИ.ДО(СчетПоКоду("634.4")); |
|||
8
palpetrovich
31.05.12
✎
11:55
|
+(6) че?
|
|||
9
palpetrovich
31.05.12
✎
11:58
|
(7) молодец, пиши исче :)
|
|||
10
kambar93
31.05.12
✎
12:00
|
не правильно все распределяет
Должно было быть 7651,08 от этой формулы 47228 / 291525 * 47228 выходит 39708,99 |
|||
11
chief accountant
31.05.12
✎
12:00
|
(7) что это?
|
|||
12
kambar93
31.05.12
✎
12:01
|
Модуль документа
|
|||
13
antoneus
31.05.12
✎
12:01
|
развот?
|
|||
14
Irek-kazan
31.05.12
✎
12:03
|
(7) много букаff не осилил
|
|||
15
chief accountant
31.05.12
✎
12:04
|
(10) у меня выходит 47228 / 291525 * 47228 = 7651.0899030957893834148
|
|||
16
kambar93
31.05.12
✎
12:07
|
вот
СуммаПоЦене = 0; СчетчикЦикла = 0; Для СчетчикЦикла = 1 По Размер Цикл Стр = ""; Цен = Цена.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускБезПолуф = Выпуск.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускПолуф = Полуфабрикаты.ПолучитьЗначение(СчетчикЦикла, Стр); РасчетныйВыпуск = 0; РасчетныйВыпуск = ВыпускБезПолуф + ВыпускПолуф; //Если РасчетныйВыпуск > 0 Тогда //СуммаПоЦене = СуммаПоЦене + (Цен * РасчетныйВыпуск); СуммаПоЦене = СуммаПоЦене + (Цен * ВыпускБезПолуф); СуммаПоЦене = СуммаПоЦене + (Цен * ВыпускПолуф); //КонецЕсли; КонецЦикла; //Сообщить("общ="+СуммаПоЦене); СчетчикЦикла = 0; Для СчетчикЦикла = 1 По Размер Цикл Стр = ""; МатериаловПоПродукции = 0; Материалы = СоздатьОбъект("СписокЗначений"); СуммаМатериалы = СоздатьОбъект("СписокЗначений"); КоличМатериалы = СоздатьОбъект("СписокЗначений"); Номен = Номенклатура.ПолучитьЗначение(СчетчикЦикла, Стр); Цен = Цена.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускБезПолуф = Выпуск.ПолучитьЗначение(СчетчикЦикла, Стр); ВыпускПолуф = Полуфабрикаты.ПолучитьЗначение(СчетчикЦикла, Стр); РасчетныйВыпуск = ВыпускБезПолуф + ВыпускПолуф; //сообщить(Номен.Наименование+" "+Цен+" "+ВыпускБезПолуф+" к="+цен*ВыпускБезПолуф/СуммаПоЦене); Если ВыпускБезПолуф > 0 Тогда Коэф = (Цен * ВыпускБезПолуф) * 100 / СуммаПоЦене / 100; Если Номен.сч1=Счетпокоду("221.0") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.0"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.4"); Операция.Сумма=бви.ДО(СчетПоКоду("900.4")) * Коэф; Операция.Записать(); конецесли; если Номен.сч1=Счетпокоду("221.1") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.1"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.5"); Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; Операция.Записать(); конецесли; //если Номен.сч1=Счетпокоду("221.2") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.2"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; КонецЕсли; Если ВыпускПолуф > 0 Тогда Коэф = (Цен * ВыпускПолуф) * 100 / СуммаПоЦене / 100; Если Номен.сч1=Счетпокоду("221.0") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.0"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.4"); Операция.Сумма=бви.ДО(СчетПоКоду("900.4")) * Коэф; Операция.Записать(); конецесли; если Номен.сч1=Счетпокоду("221.1") тогда Операция.НоваяПроводка(); Операция.Дебет.Счет=СчетПоКоду("900.1"); операция.дебет.Номенклатура = Номен; Операция.Кредит.Счет=СчетПоКоду("900.5"); Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; Операция.Записать(); конецесли; //если Номен.сч1=Счетпокоду("221.2") тогда // Операция.НоваяПроводка(); // Операция.Дебет.Счет=СчетПоКоду("900.2"); // операция.дебет.Номенклатура = Номен; // Операция.Кредит.Счет=СчетПоКоду("900.5"); // Операция.Сумма=бви.ДО(СчетПоКоду("900.5")) * Коэф; // Операция.Записать(); //конецесли; КонецЕсли; |
|||
17
Партизан
31.05.12
✎
15:02
|
(4)
Функция РасчетФормулы() возврат 47228/291525*47228; КонецФункции; |
|||
18
1Сергей
31.05.12
✎
15:16
|
(17)
Функция РасчетФормулы() возврат 7651.08990282; КонецФункции; |
|||
19
chief accountant
31.05.12
✎
15:45
|
(18) Хм, чем считал?
|
|||
20
1Сергей
31.05.12
✎
15:47
|
(19) калькулятором
|
|||
21
chief accountant
31.05.12
✎
15:48
|
(20) калькулятор врет, ибо (15)
|
|||
22
1Сергей
31.05.12
✎
15:49
|
(21) да, вижу уже. но уже пох :)
|
|||
23
Ненавижу 1С
гуру
31.05.12
✎
15:50
|
ржачно
Коэф = (Цен * ВыпускБезПолуф) * 100 / СуммаПоЦене / 100; |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |