Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
01 июл 2024, 10:14

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

Автор Лесной Лес, 10 мар 2015, 14:54

0 Пользователей и 1 гость просматривают эту тему.

Лесной Лес

Платформа 1С ?.? (7.70.027) Конфигурация Бухгалтерский учет редакция (4.5)
Необходимо получить себестоимость материала при выборе конкретного склада. Если не выбирать конкретный склад суммы расчитываются. При выборе конкретного склада суммы выводятся нулевые. Пытался убрать выборку субконто из цикла - не помогло. Не могу понять в чем проблема. Внешний отчет приложил.

Herby

во вложении ссылка несуществующая.

по проблеме: вы уверены что выбираете именно тот склад, по которому были движения?

Лесной Лес

Внешний отчет перезалил. Уверен что по данному складу были движения. Оборотно-сальдовая ведомость по 10 счету эти движения отражает. Текст модуля


Процедура Сформировать()
   Таб = СоздатьОбъект("Таблица");
   Таб.ИсходнаяТаблица("Сформировать");
   Ит = СоздатьОбъект("БухгалтерскиеИтоги");
    Ит.ИспользоватьСубконто(ВидыСубконто.Материалы, ВыбСубконто1, 1);
   Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения, ВыбСубконто2, 1);
   Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода,"10;10.1;10.2;10.3;10.4;10.5;10.6;10.8;10.9;10.10;10.11",,, 1,,"СК");
   Таб.ВывестиСекцию("Шапка");
   Таб.Опции(0,0,Таб.ВысотаТаблицы(),0);
   Ит.ВыбратьСубконто(1);
   Пока Ит.ПолучитьСубконто(1) = 1 Цикл
      
      КоличествоКон = Ит.СКД(3);
      КоличествоНач = Ит.СНД(3);
      КоличествоПрих = Ит.ДО(3);
      КоличествоРасх = Ит.КО(3);
      СуммаНач = Ит.СНД(1);
      СуммаКон = Ит.СКД(1);
      СуммаПрих = Ит.До(1);
      СуммаРасх = Ит.Ко(1);
      КолНаСкладеНач = КоличествоНач;
      КолНаСкладеКон = КоличествоКон;
        КолНаСкладеПрих = КоличествоПрих;
      КолНаСкладеРасх = КоличествоРасх;
      
      //Если Выбсубконто2.Выбран() = 1 Тогда
         
         //Ит.ВыбратьСубконто(2);
         //Если Ит.ПолучитьСубконто(2,,ВыбСубконто2) = 1 Тогда
   
            //КолНаСкладеКон = Ит.СКД(3);
            //КолНаСкладеНач = Ит.СНД(3);
            //КолНаСкладеПрих = Ит.ДО(3);
            //КолНаСкладеРасх = Ит.КО(3);
         //Иначе   
          
            //Продолжить;
            
         //КонецЕсли;
         
      //КонецЕсли;

      
      СуммаСебНач = ?(КоличествоНач = 0, 0, СуммаНач/КоличествоНач*КолНаСкладеНач);
      СуммаСебКон = ?(КоличествоКон  = 0, 0, СуммаКон/КоличествоКон * КолНаСкладеКон);
      СуммаСебПрих = ?(КоличествоПрих  = 0, 0, СуммаПрих/КоличествоПрих * КолНаСкладеПрих);
      СуммаСебРасх = ?(КоличествоРасх  = 0, 0, СуммаРасх/КоличествоРасх * КолНаСкладеРасх);
      Если (СуммаСебНач<>0) или (СуммаСебКон<>0) или (СуммаСебПрих <>0) или (СуммаСебРасх <>0) или (КолНаСкладеНач<>0) или ((КолНаСкладеКон<>0))
      или (КолНаСкладеПрих<>0) или (КолНаСкладеРасх<>0) Тогда
         Таб.ВывестиСекцию("Субконто1");
      Иначе
         
      КонецЕсли;

   КонецЦикла; 
   Таб.ВывестиСекцию("Подвал");
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Сформировать","");
КонецПроцедуры
//}}БУХГАЛТЕРСКИЙ ЗАПРОС 

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

//{{ИНИЦИАЛИЗАЦИЯ БУХГАЛТЕРСКОГО ЗАПРОСА(Сформировать)
   ВыбНачПериода = НачалоПериодаБИ();
   ВыбКонПериода = КонецПериодаБИ();
//{{ИНИЦИАЛИЗАЦИЯ БУХГАЛТЕРСКОГО ЗАПРОСА

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





Herby

с типом фильтра в "ИспользоватьСубконто" не пробовали поиграться?

И вы в цикле пробегаете по первому субконто (по материалам), возможно поэтому по складу у вас ничего.

Лесной Лес

Спасибо. Действительно помогло
убрал Субконто2 из строки
Ит.ИспользоватьСубконто(ВидыСубконто.МестаХранения,Субконто2, 1).

Отчет заработал но суммы выводит десятизначные по некоторым материалам. Но это уже совсем другая историяю Буду разбираться.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск