| View previous topic :: View next topic   | 
	
	
	
		| Author | 
		Message | 
	
	
		shura_k
 
 
  Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
  | 
		
			
				 Posted: 16 Nov 2005 15:34    Post subject: Как создать индексный файл IDX | 
				     | 
			 
			
				
  | 
			 
			
				Собственно SUBJ.
 
Как при наличие CDX создать IDX и работать с ни | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 16 Nov 2005 16:03    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Тут народ уроки просит - тема немного общая по созданию индексов.
 
Давайте я ее в урок вечером обращ | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Олег Смирнов
 
 
  Joined: 06 Sep 2004 Posts: 821 Location: Олег Смирнов Occupation: Раут (поганист-сисадмин) Interests: Новосибирск
  | 
		
			
				 Posted: 16 Nov 2005 18:07    Post subject: Re: Как создать индексный файл IDX | 
				     | 
			 
			
				
  | 
			 
			
				 	  | shura_k wrote: | 	 		  | Как при наличие CDX создать IDX и работать с ним? | 	  
 
Сразу глупый вопрос: а чего такого позволяет сделать .IDX чего нельзя сделать с .CDX? _________________ С уважением, Олег Р. Смирн | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		shura_k
 
 
  Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
  | 
		
			
				 Posted: 16 Nov 2005 20:03    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| Это для совместимости с другим ПО. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		shura_k
 
 
  Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
  | 
		
			
				 Posted: 17 Nov 2005 11:13    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | nordk wrote: | 	 		  Тут народ уроки просит - тема немного общая по созданию индексов.
 
Давайте я ее в урок вечером обращу | 	  
 
 
Обещали урока и нет  
 
И на вопрос ни кто не ответил   | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Nov 2005 11:19    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Виноват- исправлюсь
 
Не смог придумать как все обобщить.
 
Дело в том, что с одной стороны хотелось показать как простой временный индекс делается, с другой стороны можно сделать хитрее - ведь то что вы спрашиваете это собственно встроенная возможность InitList() все фильтры в БЭСТе по F6 это временные индексы и если внимательно посмотреть в набор параметров _aheads - то там можно увидеть параметры которые собственно и предлагают вам делать хитрые собственные фильтры на индексах. Вот сходу решил что легко обобщу а вечером посидел и понял, что поспешил... | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Nov 2005 11:21    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Чтобы не задерживать посмотрите вот это
 
 	  | Code: | 	 		  FUNCTION CreIndex(cNameNtx,cNtxKey,cForKey,nRow)
 
IF cForKey==NIL
 
   cForKey:='.T.'
 
ENDIF
 
Busy(.T.)
 
INDEX ON &cNtxKey TO (cNameNtx)           ;
 
FOR &cForKey
 
Busy(.F.)
 
DBGOTOP()
 
RETURN cNameNtx | 	  
 
 
      	  | Code: | 	 		   cTmp_Cdx := TempFile(PATH_TMP,"CDX")
 
      FErase(cTmp_Cdx)
 
      cTmp_Cdx := CreIndex(cTmp_Cdx,"UPPER(indexkey)") | 	 
  | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		shura_k
 
 
  Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
  | 
		
			
				 Posted: 17 Nov 2005 11:26    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Спасибо,
 
но я спрашивал не про CDX, а IDX  
 
На сколько я понял надо сменить RDD, а потом работать обычными функциями?
 
И честно говоря, даный вопрос хотелось бы осветить не встроенными функциями Бэста, а чистым Харборо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		dmitry
 
  
  Joined: 03 Jan 2002 Posts: 33 Location: Орлов Д.В. Occupation: Элипс-Опт Interests: Москва
  | 
		
			
				 Posted: 17 Nov 2005 11:31    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | shura_k wrote: | 	 		  Спасибо,
 
но я спрашивал не про CDX, а IDX  
 
 | 	  
 
напишите так
 
 	  | Code: | 	 		  cTmp_Cdx := TempFile(PATH_TMP,"IDX") 
 
 | 	 
  | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		shura_k
 
 
  Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
  | 
		
			
				 Posted: 17 Nov 2005 11:37    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | Quote: | 	 		  напишите так
 
 	  | Code: | 	 		  cTmp_Cdx := TempFile(PATH_TMP,"IDX") 
 
 | 	 
  | 	  
 
Я спорить не буду, но разве это не даст просто смену расширения? | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Nov 2005 13:11    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Вы запускаете встроенную функцию и она вам по расширению строит что просите
 
А что касается чистого харбора - в БЭСТе он не в чистом виде и моя задача программирование в БЭСТ-4, потому с этих ракурсов и подхожу ко всем вопросам
 
Вернее меня поправляют уже xHarbour что он там "чистый"
 
Но IDX DBCREATEINDEX() - работает без проблем - Вы же хотите не просто индекс а к существующему | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		shura_k
 
 
  Joined: 10 Oct 2003 Posts: 342 Location: Александр Occupation: Специалист Interests: Калининград
  | 
		
			
				 Posted: 17 Nov 2005 13:57    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Все варианты приводят просто к смене расширения, внутреняя структура индеска остаётся CDX   | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 17 Nov 2005 15:28    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| DBCREATEINDEX() - создает IDX | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		 |