14.12.2016

Не выводится себестоимость в отчете "Остатки ТМЦ за период" в 1С Предприятии 7.7


В данном видеоуроке рассмотрим решение проблемы с выводом себестоимости отчета "Остатки ТМЦ за период" в 1С Предприятии 7.7.

В данном уроке будут рассмотрены принципы работы с таблицей значений, выборки данных из регистров партии, а также закрепим работу с отладкой в 1С 7.7 и быстрым поиском ошибок кода.




Создание таблицы значений, выборка данных из регистра и заполнение таблицы значений 1С Предприятии 7.7


	 

	ТЗИтоги=СоздатьОбъект("ТаблицаЗначений");
	ТЗИтоги.НоваяКолонка("Номенклатура","Справочник.Номенклатура");
	ТЗИтоги.НоваяКолонка("СуммаРуб","Число",15,2);
	ТЗИтоги.НоваяКолонка("СуммаБезНДС","Число",15,2);
	ТЗИтоги.НоваяКолонка("Количество","Число",15,0);

	РегПартии=ВремРегистры.ПартииНаличие;     	
	
	РегПартии.ВыбратьДвижения(ДатаНачала,ДатаКонца,);
	Пока РегПартии.ПолучитьДвижение() = 1 Цикл
		ТЗИтоги.НоваяСтрока();
		ТЗИтоги.Номенклатура = РегПартии.Номенклатура;
		ТЗИтоги.СуммаРуб = РегПартии.СуммаРуб;
		ТЗИтоги.СуммаБезНДС = РегПартии.СуммаБезНДС;
		ТЗИтоги.Количество = РегПартии.Количество;
	КонецЦикла;
	
	ТЗИтоги.Свернуть("Номенклатура","СуммаРуб, СуммаБезНДС, Количество"); 

 


Поиск в таблице значений, а также поиск партии - подчинённого справочника в 1С Предприятии 7.7


	 

//******************************************************************************
Функция ПолучитьЦенуТМЦ(ТЗИтоги,Товар)
	Парт=СоздатьОбъект("Справочник.Партии");
	НомСтр="";
	Если ТЗИтоги.НайтиЗначение(Товар,НомСтр,"Номенклатура")=1 Тогда
		ТЗИтоги.ПолучитьСтрокуПоНомеру(НомСтр);
		КолТовара	= ТЗИтоги.Количество;
		Если КолТовара <> 0 Тогда
			Цена = ТЗИтоги.СуммаРуб/КолТовара;
		КонецЕсли;
		Если ТЗИтоги.СуммаРуб = 0 Тогда
			Парт.ИспользоватьВладельца(Товар);
			Парт.ПорядокКодов();
			Парт.ОбратныйПорядок(1);
			Парт.ВыбратьЭлементы();
			Цена=0;
			Пока Парт.ПолучитьЭлемент() = 1 Цикл
				Цена=Парт.ЗакупочнаяЦена;
				Если ПустоеЗначение(Цена)=0 Тогда
					Прервать;
				КонецЕсли;
			КонецЦикла;
		КонецЕсли;
	Иначе
		Парт.ИспользоватьВладельца(Товар);
		Парт.ПорядокКодов();
		Парт.ОбратныйПорядок(1);
		Парт.ВыбратьЭлементы();
		Цена=0;
		Пока Парт.ПолучитьЭлемент() = 1 Цикл
			Цена=Парт.ЗакупочнаяЦена;
			Если ПустоеЗначение(Цена)=0 Тогда
				Прервать;
			КонецЕсли;
		КонецЦикла;
	КонецЕсли;

	Возврат Цена;
КонецФункции
 

Возврат к списку

  • Facebook
  • Вконтакте