| 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 |  | 
	
		|  | 
	
		|  |