| View previous topic :: View next topic   | 
	
	
	
		| Author | 
		Message | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 14 Sep 2007 14:58    Post subject: УРОК ! Пример пошагового решения по адаптации отчета в Б5 | 
				     | 
			 
			
				
  | 
			 
			
				Задача:
 
Сделать в товарном отчете рядом с колонкой суммы по розничной цене колонку с суммой по учетной цене из карточки партий.
 
 
Просьба рассмотреть возможность пошагового решения
  Last edited by nordk on 18 Sep 2007 11:53; edited 1 time in total | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		dshlykov
 
 
  Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
  | 
		
			
				 Posted: 17 Sep 2007 09:46    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Добрый день!
 
1. Настроить вывод полей карточки партии в источнике данных В зависимости от того в каком разделе отчета Вам необходимо выводить данное поле такую настройку необходимо сделать для источника DataSet1 (А. Движение готовой продукции и товаров) или DataSet3 (Ведомость движения готовой продукции и товаров). Выполняется она следующим образом:1. Переходите на карточку запроса отчета и и устанавливаете курсор на нужный источник.
 
2. С помощью свойства Params выводите список параметров источника
 
3. Для параметра  lPartia значение True 
 
2. Вывести поле в отчетеПосле настройки источника необходимо  вевести поле CENA_F в отчет _________________ С уважением, Дмитрий Шлыков
 
Компания "БЭСТ" | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Sep 2007 12:36    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Речь идет о товарном отчете конкретно.
 
БЭСТ-5 магазин
 
Торговый зал\отчеты\реестр токументов\товарный отчет( ф.Торг 29)
 
В отчете колонка 4. Сумма товара.
 
Надо: сумма товара и сумма товра себестоимость (добавить колонку
 
по себестоимости)
 
 
Сейчас в отчете:
 
 
CHILD    формула    - просьба пояснить
 
MASTER
 
DATA
 
 формула
 
  	  | Code: | 	 		  | [If(nValuta=0,[DialogForm.DataSet1."RPS"]-[DialogForm.DataSet1."RPST"],[DialogForm.DataSet1."SUM"]-[DialogForm.DataSet1."SUMTARA"])] | 	  
 
 
Если я правильно понимаю в DataSet1 есть и себестоимость
 
просьба подсказать поля (особенно себестоимость тары) | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		dshlykov
 
 
  Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
  | 
		
			
				 Posted: 17 Sep 2007 13:36    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Добрый день!
 
 	  | nordk wrote: | 	 		  Речь идет о товарном отчете конкретно.
 
БЭСТ-5 магазин
 
Торговый зал\отчеты\реестр токументов\товарный отчет( ф.Торг 29) | 	  В предыдущем сооббщении речь шла о товарно отчете (как и было Вами написано).
 
 	  | nordk wrote: | 	 		  В отчете колонка 4. Сумма товара.
 
Надо: сумма товара и сумма товра себестоимость (добавить колонку
 
по себестоимости)
 
Сейчас в отчете:
 
CHILD    формула    - просьба пояснить
 
 | 	  Переменная sostk и stara расчитываются в коде кнопки "Выполнить", как остатки на складе в тех ценах которые указал пользователь (учетные или по прайс-листу). В строках документа выводятся данные по документу по указанной Вами формуле.
 
 	  | nordk wrote: | 	 		  MASTER DATA
 
 формула
 
  	  | Code: | 	 		  | [If(nValuta=0,[DialogForm.DataSet1."RPS"]-[DialogForm.DataSet1."RPST"],[DialogForm.DataSet1."SUM"]-[DialogForm.DataSet1."SUMTARA"])] | 	  
 
 
Если я правильно понимаю в DataSet1 есть и себестоимость
 
просьба подсказать поля (особенно себестоимость тары) | 	  
 
Все верно. Поля DialogForm.DataSet1."RPS" и DialogForm.DataSet1."RPSТ" - сумма по документу в ценах прайс-листа за товар и по таре. А поля: DialogForm.DataSet1."SUM" и DialogForm.DataSet1."SUMTARA" - в учетных ценах. _________________ С уважением, Дмитрий Шлыков
 
Компания "БЭСТ" | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Sep 2007 13:45    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Виноват не правильно поставил вопрос   
 
Все правильно у нас есть либо в розничных ценах либо в учетных.
 
Меня просят сделать еще разрез в ценах поставщика (из карточки партии)
 
В том отчете, который строит по учетным цена | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Sep 2007 13:58    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Итак в продложение вопроса:
 
 
1. у нас по каждой строке отчета выводятся данные либо в
 
продажных ценах либо в учетных, поскольку такая информация
 
содержится в заголовке документа.
 
В заголовке документов ( в частности расхода) отдельного поля
 
в ценах поставщика нет.
 
2.Стало быть по каждой накладной, вошедшей в Товарный отчет
 
по всем строкам есть необходимость просуммировать mdocm->KOL*
 
spr_part->CENA_P и эту сумму отразить по строке данного отчета.
 
 
Возможно существует какой-нибудь готовый источник и будет ли
 
он работать в данном отчете ?
 
3. В свете того, что в отчете разделяют сумму товара от суммы тары,
 
то и в нашем случае это необходимо учесть.
 
 
Как подойти к решению такого вопроса ? | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		dshlykov
 
 
  Joined: 02 Aug 2005 Posts: 172 Location: Дмитрий Шлыков Occupation: Компания "БЭСТ" Interests: Москва
  | 
		
			
				 Posted: 18 Sep 2007 10:17    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Добрый день!
 
 	  | nordk wrote: | 	 		  1. у нас по каждой строке отчета выводятся данные либо в продажных ценах либо в учетных, поскольку такая информация содержится в заголовке документа. В заголовке документов ( в частности расхода) отдельного поля
 
в ценах поставщика нет.
 
2.Стало быть по каждой накладной, вошедшей в Товарный отчет по всем строкам есть необходимость просуммировать mdocm->KOL*spr_part->CENA_P и эту сумму отразить по строке данного отчета. Возможно существует какой-нибудь готовый источник и будет ли он работать в данном отчете ? | 	  Используемый в отчете источник выводит все поля карточки партий, но только по запросу. Для этого необходимо установить Значение для параметра lPartia значение True. Как это сделать я писал выше в данной теме.
 
 	  | nordk wrote: | 	 		  | 3. В свете того, что в отчете разделяют сумму товара от суммы тары, то и в нашем случае это необходимо учесть. Как подойти к решению такого вопроса ? | 	  Проблема в решении данного вопроса заключается не в источнике, а в самом отчете. Дело в том что данные по отчету группируются по каждому документу, и эта группировка производится в источнике. Для решения Вашей задачи этот вариант не подойдет. Необходимо отказатся от группировки данных в отчете и сгруппировать их в самом отчете. Порядок решения следующий:
 
1. В коде кнопки выполнить есть строка, в которой задается группировка записей в источнике
 
 	  | Code: | 	 		  | DataSet1.Params['cGruping'] := 'VID+DTOC(DATE,1)+TYPE+CD+ND+SCLAD'; | 	  Эту строку необходимо удалить или закомментировать.
 
2. Необходимо создать группировку записей в отчете по виду докуметов:
 
2.1. Выложить перед секцией MasterData секцию GrupHeader. Задать условие группировки записей в отчете по полям: VID, DATE, TYPE, CD, ND, SCLAD источника. Установить свойство Visible для этой секции в значение False.
 
2.2. Выложить после секции MasterData секцию GrupFooter. В данной секции и будут выводится строки отчета.
 
3. Перенести объекты с выводимой информацией с секции MasteData на секцию GrupFooter. Здесь необходимо учесть, что в числовых полях формула расчета должна быть изменена на 
 
Для секции MasterData необходимо установить для свойства Height значение 0, что бы данная секция не выводилась в отчет, но участвовала в расчетах.
 
После этого Вы имеете возможность выложить на секции GrupFooter обьект с формулой:
 
 	  | Code: | 	 		  | [SUM(DialogForm.DataSet1."KOL"*DialogForm.DataSet1."CENA_P")] | 	  В котором необходимое значение будет посчитанно. _________________ С уважением, Дмитрий Шлыков
 
Компания "БЭСТ" | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		 |