| View previous topic :: View next topic | 
	
	
		| Author | Message | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 12:14    Post subject: Несколько справочников в InitList |   |  
				| 
 |  
				| Не могу найти описание использования нескольких справочников в InitList. Есть пример такого использования в теме "Урок 8. Размещение двух InitList на одном экране":
 
  	  | Code: |  	  | aRef:={,,,"CARDSPRID",,,,,"PARTNERS"} | 
 , но как сделано  - непонятно.
 В описании параметра aRef для InitList есть ссылка на некий S_REFER (наверное, .CH), но тоже не могу найти.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Дениска 
 
 
 Joined: 26 Feb 2002
 Posts: 649
 
 
 
 
 | 
			
				|  Posted: 01 Nov 2007 12:31    Post subject: |   |  
				| 
 |  
				| Цель, задача какая? Где надо использовать несколько справочников? |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| nordk 
 
 
 Joined: 27 Jun 2005
 Posts: 1000
 Location: Горбунов Константин
 Occupation: БЭСТ-Партнер
 Interests: СПб
 
 | 
			
				|  Posted: 01 Nov 2007 12:45    Post subject: |   |  
				| 
 |  
				| Вы сами справочники не умеете создавать ? Я правильно понял ?
 Если да - то Вам надо посмотреть функцию MakeRefer()
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 12:46    Post subject: |   |  
				| 
 |  
				| Угу. Задача такая: Ввод дополнительных характеристик партнеров. Например, первая хактеристика - тип партнера (выбор из справочника типов), вторая - подтип партнера (выбор из справочника подтипов), третья - торговый представитель (выбор из справочника торговых представителей).
 Ну и так далее.
 Хотел сделать как попроще, через Dialog - а там, если справочник есть, то нельзя массив вопросов сделать
   Вот и приходится через InitList.
 А может, изобретаю велосипед, и что-нибудь похожее уже есть ...
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 13:18    Post subject: |   |  
				| 
 |  
				| Константину: Не, справочник (MakeRefer) я создавать уже научился.
 Вопросы, конечно, есть, но создать, вызвать из Dialog() и вернуть значение уже получается.
 
 А вот сделать с помощью InitList экран как в Dialog с массивом вопросов:
 
 строка1: Тип партнера:       [            ]
 строка2: Вид партнера:      [            ]
 строка3: Тор.представитель[            ]
 
 и выбрать это из разных справочников - не пойму как.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Дениска 
 
 
 Joined: 26 Feb 2002
 Posts: 649
 
 
 
 
 | 
			
				|  Posted: 01 Nov 2007 13:59    Post subject: |   |  
				| 
 |  
				|  	  | vla wrote: |  	  | А вот сделать с помощью InitList экран как в Dialog с массивом вопросов:
 
 строка1: Тип партнера:       [            ]
 строка2: Вид партнера:      [            ]
 строка3: Тор.представитель[            ]
 
 
 | 
 
 Ввод/редактирование по F4/Enter? Если да, то посмотрите параметр aHeads в InitList
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Дениска 
 
 
 Joined: 26 Feb 2002
 Posts: 649
 
 
 
 
 | 
			
				|  Posted: 01 Nov 2007 14:06    Post subject: |   |  
				| 
 |  
				|  	  | vla wrote: |  	  | Хотел сделать как попроще, через Dialog - а там, если справочник есть, то нельзя массив вопросов сделать
   
 | 
 
 Посмотрите функцию QInput. Если я правильно понимаю, то это аналог функции Dialog. Сам я QInput не использовал.
 
 P.S. В файле \news\программирование_в_БЭСТ-4.chm у меня раздел про QInput отображается иероглифами
  Так что толком ее посмотреть у меня не получается  |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 14:10    Post subject: |   |  
				| 
 |  
				| Но ведь aHeads в InitList отвечает за описание области ввода, а мне нужно назначить разные справочники для разных элементов aHeads. А это, вроде, параметр aRef ?
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 14:20    Post subject: |   |  
				| 
 |  
				|  	  | Дениска wrote: |  	  |  	  | vla wrote: |  	  | Хотел сделать как попроще, через Dialog - а там, если справочник есть, то нельзя массив вопросов сделать
   
 | 
 
 Посмотрите функцию QInput. Если я правильно понимаю, то это аналог функции Dialog. Сам я QInput не использовал.
 
 P.S. В файле \news\программирование_в_БЭСТ-4.chm у меня раздел про QInput отображается иероглифами
  Так что толком ее посмотреть у меня не получается  | 
 
 Угууу, есть такая функция.
 Только примера использования или описания я не нашел
   И там тоже есть параметр aRef - и как в нем определить несколько справочников - вопрос остается.
  |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Дениска 
 
 
 Joined: 26 Feb 2002
 Posts: 649
 
 
 
 
 | 
			
				|  Posted: 01 Nov 2007 14:24    Post subject: |   |  
				| 
 |  
				|  	  | vla wrote: |  	  | Но ведь aHeads в InitList отвечает за описание области ввода, а мне нужно назначить разные справочники для разных элементов aHeads. А это, вроде, параметр aRef ?
 | 
 
 Все правильно. Через aHeads (6-й параметр ИнитЛиста) описываете строки ввода, а через aRef (7-й параметр ИнитЛиста) привязывает возможность ввода через справочник в эти строки ввода. aRef это массив, элементы которого определяются через MAKEREFER.
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| Дениска 
 
 
 Joined: 26 Feb 2002
 Posts: 649
 
 
 
 
 | 
			
				|  Posted: 01 Nov 2007 14:29    Post subject: |   |  
				| 
 |  
				|  	  | vla wrote: |  	  |  	  | Дениска wrote: |  	  | Посмотрите функцию QInput. Если я правильно понимаю, то это аналог функции Dialog. Сам я QInput не использовал.
 
 P.S. В файле \news\программирование_в_БЭСТ-4.chm у меня раздел про QInput отображается иероглифами
  Так что толком ее посмотреть у меня не получается  | 
 
 Угууу, есть такая функция.
 
 | 
 
 Если у вас описание функции QInput в хелпе отображается корректно, то выложите, плз, описание сюда или личным сообщением мне пришлите. Я тоже хочу это описание почитать
  |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| itman 
 
  
 Joined: 05 Apr 2002
 Posts: 1247
 Location: Ильин Е.Ю.
 Occupation: Cio
 Interests: Кинель
 
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| itman 
 
  
 Joined: 05 Apr 2002
 Posts: 1247
 Location: Ильин Е.Ю.
 Occupation: Cio
 Interests: Кинель
 
 | 
			
				|  Posted: 01 Nov 2007 16:57    Post subject: |   |  
				| 
 |  
				|  	  | vla wrote: |  	  | Угу. Задача такая: Ввод дополнительных характеристик партнеров. Например, первая хактеристика - тип партнера (выбор из справочника типов), вторая - подтип партнера (выбор из справочника подтипов), третья - торговый представитель (выбор из справочника торговых представителей).
 Ну и так далее.
 
 | 
 Ввод значений из собственного реестра? или из справочника партнеров?
 Если из стандартного справочника может проще нарисовать окошко и к каждому полю привязать свой справочник?
 типа такого:
 
  	  | Code: |  	  | T:=7
 l:=7
 b:=t+2
 R:=67
 @ T-1,l-1 CLEAR TO b,R
 DISPBOX(T-1,l-1,b,R,2)
 @ T+1,l+1 SAY "Торговый агент"
 @ T+1,l+17 REFER "spragent" GET cAgent PICTURE "@!s25"
 
 READ
 
 | 
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 17:20    Post subject: |   |  
				| 
 |  
				|  	  | Дениска wrote: |  	  |  	  | vla wrote: |  	  | Но ведь aHeads в InitList отвечает за описание области ввода, а мне нужно назначить разные справочники для разных элементов aHeads. А это, вроде, параметр aRef ?
 | 
 
 Все правильно. Через aHeads (6-й параметр ИнитЛиста) описываете строки ввода, а через aRef (7-й параметр ИнитЛиста) привязывает возможность ввода через справочник в эти строки ввода. aRef это массив, элементы которого определяются через MAKEREFER.
 | 
 
 Ну так вопрос как раз в том и есть - в каком формате в параметре aRef указать для разных строк ввода разные справочники !
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		| vla 
 
 
 Joined: 15 Mar 2005
 Posts: 60
 Location: Гаклин Владимир Ильич
 Occupation: ООО БэстСиб, консультант
 Interests: Новосибирск
 
 | 
			
				|  Posted: 01 Nov 2007 17:27    Post subject: |   |  
				| 
 |  
				|  	  | itman wrote: |  	  | Ввод значений из собственного реестра? или из справочника партнеров?
 Если из стандартного справочника может проще нарисовать окошко и к каждому полю привязать свой справочник?
 типа такого:
 
  	  | Code: |  	  | T:=7
 l:=7
 b:=t+2
 R:=67
 @ T-1,l-1 CLEAR TO b,R
 DISPBOX(T-1,l-1,b,R,2)
 @ T+1,l+1 SAY "Торговый агент"
 @ T+1,l+17 REFER "spragent" GET cAgent PICTURE "@!s25"
 READ
 
 | 
 | 
 
 Ввод значений из своих (пользовательских) справочников.
 И если нетрудно, про приведенный фрагмент можно подробнее ?
 @ T-1,l-1 CLEAR TO b,R  //тут чистим место
 DISPBOX(T-1,l-1,b,R,2)  //тут рисуем рамку
 @ T+1,l+1 SAY "Торговый агент"   //тут пишем в окне название поля
 @ T+1,l+17 REFER "spragent" GET cAgent PICTURE "@!s25" //а тут ?
 READ   //и это тоже непонятно...
 |  | 
	
		| Back to top |  | 
	
		|  | 
	
		|  |