| View previous topic :: View next topic | 
	
	
		| Author | Message | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 28 Feb 2005 21:08    Post subject: Кто знает как передать в файл pagcode? (т.о. аморт. сп/од.) |   |  
				| 
 |  
				| Доброго времени суток. Хочу в амортизации спецодежды сделать формирование проводок в зависимости от кода контрагента, но при написании в строке формула
 fileeval("1.txt",pagcode) выдает ошибку. Каким образом можно передать в файл этот параметр?
 Спасибо.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 02 Mar 2005 10:50    Post subject: |   |  
				| 
 |  
				| Разработчики, ответьте, пожалуйст |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Позднякова Наталья 
 
 
 Joined: 04 Nov 2004
 Posts: 13
 Location: Позднякова Наталья
 Occupation: программист
 Interests: Минск
 
 | 
			
				|  Posted: 02 Mar 2005 11:09    Post subject: |   |  
				| 
 |  
				| В фигурных скобках { } 
 fileeval("1.txt",{pagcode})
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 02 Mar 2005 13:55    Post subject: |   |  
				| 
 |  
				| Не получается. Выдает: Неправильная формула: fileeval("1.txt",{pagcode})
 При переходе из шапки в окно содержания. Видимо на этапе расчета сумм амортизици
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Марина. 
 
 
 Joined: 17 Nov 2004
 Posts: 237
 Location: Потапова Марина
 Occupation: БЭСТ-Программы
 Interests: Москва
 
 | 
			
				|  Posted: 03 Mar 2005 12:17    Post subject: |   |  
				| 
 |  
				| Здравствуйте. Какая у Вас версия, какая поставка? Пришлите скриншот ошибк
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Титов Александр 
 
 
 Joined: 26 Jul 2002
 Posts: 975
 Location: Титов Александр Александрович
 Occupation: Компания БЭСТ
 Interests: Москва
 
 | 
			
				|  Posted: 03 Mar 2005 13:40    Post subject: Re: Кто знает как передать в файл pagcode? (т.о. аморт. сп/о |   |  
				| 
 |  
				|  	  | ewgen wrote: |  	  | Доброго времени суток. Хочу в амортизации спецодежды сделать формирование проводок в зависимости от кода контрагента, но при написании в строке формула
 fileeval("1.txt",pagcode) выдает ошибку. Каким образом можно передать в файл этот параметр?
 Спасибо.
 | 
 Добрый день!
 Можно переменную и так передать, но конкретно при выполнении этого режима указанная переменная не видна, поэтому лучше не передавать, а взять непосредственно из MDOCM. Например, вот такой пример работает:
 SayAndWait(mdocm->agentcode)
 xRet:=200
 RETURN
 _________________
 С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 03 Mar 2005 17:04    Post subject: |   |  
				| 
 |  
				| То есть я в текстовом файле могу использовать после этих 
  	  | Quote: |  	  | вот такой пример работает: SayAndWait(mdocm->agentcode)
 xRet:=200
 RETURN
 | 
 строк
 if(mdocm->agentcode="000141",S0,0)
 if(mdocm->agentcode="000142",S0,0)
 if(mdocm->agentcode="000143",S0,0)
 if(mdocm->agentcode="000144",S0,0)
 if(mdocm->agentcode="000145",S0,0)
 .........................................................
 Правильн
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Титов Александр 
 
 
 Joined: 26 Jul 2002
 Posts: 975
 Location: Титов Александр Александрович
 Occupation: Компания БЭСТ
 Interests: Москва
 
 | 
			
				|  Posted: 03 Mar 2005 20:13    Post subject: |   |  
				| 
 |  
				|  	  | ewgen wrote: |  	  | То есть я в текстовом файле могу использовать после этих 
  	  | Quote: |  	  | вот такой пример работает: SayAndWait(mdocm->agentcode)
 xRet:=200
 RETURN
 | 
 строк
 if(mdocm->agentcode="000141",S0,0)
 if(mdocm->agentcode="000142",S0,0)
 if(mdocm->agentcode="000143",S0,0)
 if(mdocm->agentcode="000144",S0,0)
 if(mdocm->agentcode="000145",S0,0)
 .........................................................
 Правильно?
 | 
 
 Если я правильно понял, то нужно передать в программу S0, а потом можно написать так:
 xRet:=if (mdocm->agentcode$"000141 000142 000143 000144 000145",S0,0)
 RETURN
 где x$y - означает, что подстрока  x содержится в строке y.
 
 
 А более эффективно в БЭСТ-4+ использовать механизм hFileEval с использованием отладчика - тогда сразу все станет видно.
 Как это делается, написано в Developer или еще на форуме можно почитать:
 http://www.bestnet.ru/club/phpBB/viewtopic.php?t=6161
 _________________
 С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 05 Mar 2005 11:15    Post subject: |   |  
				| 
 |  
				| Спасибо. Получило |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| GAL 
 
 
 Joined: 23 Apr 2002
 Posts: 344
 Location: Лопухова Галина Анатольевна
 Occupation: Компания БЭСТ
 Interests: Москва
 
 | 
			
				|  Posted: 07 Mar 2005 18:56    Post subject: |   |  
				| 
 |  
				| А нельзя было просто в алгоритме расчета суммы проводки написать if(pAgCode="000141",S0,0)
 и т.д.?
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 11 Mar 2005 11:30    Post subject: |   |  
				| 
 |  
				|  	  | Quote: |  	  | А нельзя было просто в алгоритме расчета суммы проводки написать if(pAgCode="000141",S0,0)
 и т.д.?
 | 
 
 Ну у меня надо на 262 закинуть по 100 сотрудника
 А на 263 по 300 сотрудникам. А в строке идет ограничение в 250 символов или около того.
 
 И еще. При расчете не считает вторую проводку в типовой операции!!!
 То есть по первой расчет проходит нормально, а на вторую БЭСТ не обращает никакого внимания. Исправьте, пожалуйста, ошибку.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| GAL 
 
 
 Joined: 23 Apr 2002
 Posts: 344
 Location: Лопухова Галина Анатольевна
 Occupation: Компания БЭСТ
 Interests: Москва
 
 | 
			
				|  Posted: 15 Mar 2005 11:15    Post subject: |   |  
				| 
 |  
				|  	  | ewgen wrote: |  	  | И еще. При расчете не считает вторую проводку в типовой операции!!!
 То есть по первой расчет проходит нормально, а на вторую БЭСТ не обращает никакого внимания. Исправьте, пожалуйста, ошибку.
 | 
 Что значит - не считает вторую проводку?
 В смысле - сумма амортизации берется из первой проводки?
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 15 Mar 2005 14:19    Post subject: |   |  
				| 
 |  
				|  	  | Quote: |  	  | Что значит - не считает вторую проводку? В смысле - сумма амортизации берется из первой проводки?
 | 
 
 В типовой операции две проводки. В поле сумма этих проводок забито: Fileeval("spec262.txt") и Fileeval("spec263.txt")
 Файлы находятся в папке Best\Pro\Plugins\Extensns\zapas\
 Содержание файла spec262.txt:
 
  	  | Code: |  	  | private a a:=0
 if(mdocm->agentcode="000001",a:=S,0)
 if(mdocm->agentcode="000002",a:=S,0)
 ...
 a
 | 
 
 Содержание файла spec263.txt:
 
  	  | Code: |  	  | private a a:=0
 if(mdocm->agentcode="000101",a:=S,0)
 if(mdocm->agentcode="000102",a:=S,0)
 ...
 a
 | 
 Так вот первая проводка (fileeval("spec262.txt")) в типовой операции обрабатывается, а вторая (fileeval("spec263.txt") не обрабатывается, т.е. амортизация на спецодежду, попадающую под условия в файле spec263.txt, не начисляется.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| GAL 
 
 
 Joined: 23 Apr 2002
 Posts: 344
 Location: Лопухова Галина Анатольевна
 Occupation: Компания БЭСТ
 Interests: Москва
 
 | 
			
				|  Posted: 15 Mar 2005 16:19    Post subject: |   |  
				| 
 |  
				| В БЭСТ-4 формула сумма амортизации не задается отдельно, она берется из проводки. Проводок, вообще говоря, может быть несколько, и в них суммы могут "дублироваться" для каких-то иных целей. Поэтому "накапливать" сумму всех проводок нецелесообразно. Программа берет сумму амортизации из первой проводки.
 Я использовала для расчета специальный забалансовый счет.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| ewgen 
 
 
 Joined: 23 Nov 2002
 Posts: 339
 Location: Евгений
 Occupation: (инженер программист)
 Interests: Надым
 
 | 
			
				|  Posted: 16 Mar 2005 07:16    Post subject: |   |  
				| 
 |  
				| Так все-таки как мне сделать, чтобы в зависимости от кода человека(на котором числится спецодежда) рассчитывалась амортизация и сумма шла на один из двух счетов? Как я понял расчет суммы амортизации идет только по формуле из первой проводки? И как же мне ее распределить по двум счета |  | 
	
		| Back to top |  | 
	
		|  | 
	
		|  |