| View previous topic :: View next topic   | 
	
	
	
		| Author | 
		Message | 
	
	
		SantechNik
 
 
  Joined: 31 Dec 2001 Posts: 1696 Location: Гусев Михаил
  Interests: Москва
  | 
		
			
				 Posted: 22 Jan 2004 12:29    Post subject: Как вывести на печать текст по условию ? (+) | 
				     | 
			 
			
				
  | 
			 
			
				Имеется вот такая задача:
 
- у некоторых ТМЦ имеется особенность из-за того, что они "не для продажи на экспорт"
 
- я могу присвоить некий признак таким ТМЦ и этот текст (признак) я могу записать в какое либо поле mlabel.
 
 
Теперь вопрос:
 
как мне сделать так, что бы в документе(Счете) "ниже таблицы" впечатывался текст, что ТМЦ с №№ таким-то "не для продажи на экспорт", если таковая ТМЦ действительно попала в счет ?
 
Как это сделать через fileeval я представляю, но... Этот метод подходит только к тем счетам(заказам), кот. уже записали. Т.е. перед печатью необходима запись. Это совершенно не реальное условие! Печатать будут как после записи так и до нее.
 
 
Как можно это реализовать? _________________ http://santech.chat.ru/bro.zip - удобный броузер/редактор БД | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Privet
 
 
  Joined: 08 Sep 2003 Posts: 18 Location: Privet
 
 
  | 
		
			
				 Posted: 22 Jan 2004 12:54    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| Вам нужно под основной таблицей сделать еще одну. В ней для тех строк, наменклатура которых Вами помечена, дать нужный текст, а для остальных - "{[0]}". Думаю так. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		SantechNik
 
 
  Joined: 31 Dec 2001 Posts: 1696 Location: Гусев Михаил
  Interests: Москва
  | 
		
			
				 Posted: 22 Jan 2004 13:10    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Это, конечно, "здорово" - две таблицы.
 
Но мне надо одну строчку под таблицей.
 
Ведь бывают заказы и по 20-30 позиций и что - печатаь их на Н-цати листах? Я уж лучше тогда в первую таблицу справа какое-нибудь поле комментариев вставлю.
 
 
Как сделать одной строкой? Не раздувая печатный докумен _________________ http://santech.chat.ru/bro.zip - удобный броузер/редактор БД | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		itman
 
  
  Joined: 05 Apr 2002 Posts: 1247 Location: Ильин Е.Ю. Occupation: Cio Interests: Кинель
  | 
		
			
				 Posted: 22 Jan 2004 14:14    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Привет
 
как в досе даже не представляю.
 
Либо процедурку писать
 
либо через Генератор пустить если уж очень критичн | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		SantechNik
 
 
  Joined: 31 Dec 2001 Posts: 1696 Location: Гусев Михаил
  Interests: Москва
  | 
		
			
				 Posted: 22 Jan 2004 14:33    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Процедурку - это понятно.
 
Fileeval , действительно, поможет. Но он работает по записанному заказу. А мне надо прямо в процессе формирования заказа. _________________ http://santech.chat.ru/bro.zip - удобный броузер/редактор БД | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Privet
 
 
  Joined: 08 Sep 2003 Posts: 18 Location: Privet
 
 
  | 
		
			
				 Posted: 22 Jan 2004 14:38    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Мне показалось, Вы в теме написали, что комментарии выводятся для каждой найденной позиции с нужным признаком. Если просто надо сделать примечание, что имело место быть, могу предложить такой вариант. 
 
До таблицы - Вычислить по формуле aVars := {.F.} 
 
В таблице где-нибудь - Вычислить по формуле aVars[1] := <Ваше условие>
 
После таблицы - Вычислить по формуле if(aVars[1], '...', '')
 
Приблизительно  | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Privet
 
 
  Joined: 08 Sep 2003 Posts: 18 Location: Privet
 
 
  | 
		
			
				 Posted: 22 Jan 2004 14:43    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Поправка к пункту "В таблице":
 
aVars[1] := aVars[1] .or. <Ваше условие> | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		SantechNik
 
 
  Joined: 31 Dec 2001 Posts: 1696 Location: Гусев Михаил
  Interests: Москва
  | 
		
			
				 Posted: 22 Jan 2004 15:59    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Данный способ не прошел.
 
Т.к. данный алгоритм приводит к тому, что сначала рассчитывается "голова", затем "подвал", а затем "тело таблицы". В результате подвал не выводится на печать. _________________ http://santech.chat.ru/bro.zip - удобный броузер/редактор БД | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Krosh
 
  
  Joined: 13 Oct 2003 Posts: 97 Location: КИА Occupation: СТ Interests: Москва
  | 
		
			
				 Posted: 22 Jan 2004 17:42    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Вопрос к ИС: а почему так не логично- шапка, подвал и потом строки?
 
Можно ли изменить последовательность на правильную? Как это сделать? | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Privet
 
 
  Joined: 08 Sep 2003 Posts: 18 Location: Privet
 
 
  | 
		
			
				 Posted: 23 Jan 2004 11:49    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | SantechNik wrote: | 	 		  Данный способ не прошел.
 
Т.к. данный алгоритм приводит к тому, что сначала рассчитывается "голова", затем "подвал", а затем "тело таблицы". В результате подвал не выводится на печать. | 	  
 
 
Что-то Вы не так сделали. Порядок расчета: голова, таблица, подвал | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		SantechNik
 
 
  Joined: 31 Dec 2001 Posts: 1696 Location: Гусев Михаил
  Interests: Москва
  | 
		
			
				 Posted: 23 Jan 2004 14:50    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Может быть и не так, но по предложеному выше алгоритму формируется именно шапка, подвал, тело т. и в результате в подвал ничего не выводится. _________________ http://santech.chat.ru/bro.zip - удобный броузер/редактор БД | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Privet
 
 
  Joined: 08 Sep 2003 Posts: 18 Location: Privet
 
 
  | 
		
			
				 Posted: 23 Jan 2004 15:50    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				В таблице нужно сформировать флажок (истина или ложь), который говорит о том, встречен ли товар с отметкой (это Ваше условие).
 
А после таблицы Вы в зависимости от состояния флага выводите или нет текст сообщения. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Krosh
 
  
  Joined: 13 Oct 2003 Posts: 97 Location: КИА Occupation: СТ Interests: Москва
  | 
		
			
				 Posted: 27 Jan 2004 13:19    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Privet, попробуй сделай простейший тест.
 
 
Введи в шапку поле"Вычислить по формуле":
 
FileEval("test.prg",{"шапка"})
 
Введи в подвал поле"Вычислить по формуле":
 
FileEval("test.prg",{"подвал"})
 
Введи в таблицу поле"Вычислить по формуле":
 
FileEval("test.prg",{"таблица"})
 
 
Текст test.prg - одна строка:
 
 
SayAndWait(aPars[1])
 
 
Напиши результат, очень интересно. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		SantechNik
 
 
  Joined: 31 Dec 2001 Posts: 1696 Location: Гусев Михаил
  Interests: Москва
  | 
		
			
				 Posted: 28 Jan 2004 16:47    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				уточнение:
 
постинг Krosh'a адресован не SantechNIK'у , а Privet' _________________ http://santech.chat.ru/bro.zip - удобный броузер/редактор БД | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		 |