| View previous topic :: View next topic   | 
	
	
	
		| Author | 
		Message | 
	
	
		k_serg
 
 
  Joined: 30 May 2002 Posts: 5
 
 
 
  | 
		
			
				 Posted: 30 May 2002 12:32    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| Есть необходимость написать внешнюю прогу для БЭСТ. Но мне сказали, что могут рухнуть индексы в ADS. Кто знает решение, подскажите пожалуйст | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		general
 
  
  Joined: 14 Jan 2002 Posts: 276 Location: Клешнин Антон Александрович
 
 
  | 
		
			
				 Posted: 30 May 2002 12:46    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| Есть Clipper - к нему есть библиотеки для работы с индексами. Либо если лень изучать Clipper (хотя почти никакой разницы), можешь на VisualFox' | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		k_serg
 
 
  Joined: 30 May 2002 Posts: 5
 
 
 
  | 
		
			
				 Posted: 31 May 2002 03:44    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				А VisualFox не рушит индексы ADS?
 
 | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		general
 
  
  Joined: 14 Jan 2002 Posts: 276 Location: Клешнин Антон Александрович
 
 
  | 
		
			
				 Posted: 31 May 2002 09:02    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| Для него тоже есть библиотеки | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		ksenya
 
 
  Joined: 01 Feb 2002 Posts: 112
 
 
 
  | 
		
			
				 Posted: 21 Jun 2002 17:48    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | Quote: | 	 		  
 
On 2002-05-31 09:02, general wrote:
 
Для него тоже есть библиотеки
 
 | 	  
 
Подскажите, какие?
 
 | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		general
 
  
  Joined: 14 Jan 2002 Posts: 276 Location: Клешнин Антон Александрович
 
 
  | 
		 | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		k_serg
 
 
  Joined: 30 May 2002 Posts: 5
 
 
 
  | 
		
			
				 Posted: 04 Apr 2003 11:55    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Господа! Как работает режим "Формирование отчетов", если он написан на FP2.6 for DOS? И при этом не рушатся индексы.
 
Может здесь какая-то хитрость? | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Алексей З.
 
  
  Joined: 08 Jan 2003 Posts: 344 Location: Зызин Алексей Occupation: ЗАО "Ренова", программист Interests: Москва
  | 
		
			
				 Posted: 04 Apr 2003 12:03    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | k_serg wrote: | 	 		  Господа! Как работает режим "Формирование отчетов", если он написан на FP2.6 for DOS? И при этом не рушатся индексы.
 
Может здесь какая-то хитрость? | 	  
 
А с чего бы им рушится?! | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		masson
 
 
  Joined: 02 Apr 2003 Posts: 12
 
 
 
  | 
		
			
				 Posted: 04 Apr 2003 12:27    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | k_serg wrote: | 	 		  Господа! Как работает режим "Формирование отчетов", если он написан на FP2.6 for DOS? И при этом не рушатся индексы.
 
Может здесь какая-то хитрость? | 	  
 
 
Fox без проблем умеет читать БЕСТовые индексы, проблемы возникают при корректировке индексируемых БЭСТом полей или добавлении записей в dbf-файлы. Я чуть ниже зарядил на эту тему топик, но что-то пока никто не отвечает    | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		yermak
 
  
  Joined: 01 Aug 2002 Posts: 45 Location: Ермак Е.Ю. Occupation: ООО "Автоматизированные системы управления" Interests: Владивосток
  | 
		
			
				 Posted: 06 Apr 2003 03:54    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Фокс (любой) нормально работает с индексами БЭСТ4 клиент-сервер.
 
Только открывать таблицы нужно так 
 
USE mdocm shared noupdate in 0
 
 
Главное тут shared и NoUpdate. Сам написал несколько программ.
 
Единственный косяк - это при работе с ADS под NT  не получается насильно установить кодовую страницу, но там и через ODBC можно юсать данные. _________________ С уважением, Ермак Евгений
 
г.Владивосток | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Алексей З.
 
  
  Joined: 08 Jan 2003 Posts: 344 Location: Зызин Алексей Occupation: ЗАО "Ренова", программист Interests: Москва
  | 
		
			
				 Posted: 07 Apr 2003 11:43    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Не совсем согласен с предыдущим оратором.
 
Я работаю с БЭСТом более 6 лет. Всегда "обслуживал" его Фоксом. Сначала делал обработки в 2.6, потом в 5-ке, сейчас в 7-ке. НИКОГДА не было сложностей с работой над БЭСТовскими таблицами. При открытии таблицы, по ситуации, можно открывать и SHARED и EXCLUSIVE. И НИКОГДА не открываю  Для таких случаев я делаю ПРЕДСТАВЛЕНИЯ, что гораздо удобнее и безопаснее. Но чтобы реально работать с таблицами - без EXCLUSIVE не обойтись!
 
Один только ньюанс: когда Вы ВПЕРВЫЕ открываете БЭСТовскую таблицу через DATA SESSION или из COMMAND обязательно указываете DOS-кодировку. При повторном открытии - таблица автоматически откроется в DOS-кодировке. (Во всяком случае 5-ый и 7-ой - запоминают кодировки прекрасно, а 2.6 - сам досовский)
 
По поводу индексов - могу сказать следующее. Дело в том, что как правило изменяя данные в одной таблицы НЕОБХОДИМО соответственно изменить данные в одной или нескольких других СВЯЗАННЫХ с ней таблицах. Например, таблицы с документами, по которым делаются проводки, тесно связаны с книгой операций через номер операции. Причем документу могут соответствовать как одна проводка, так и несколько. Т.е. один документ - множество (>=1) проводок. Это самый простой пример. Другие таблицы связываются между собой либо через несколько полей либо опосредованно через 3-ю таблицу. Короче, это классика реляционных баз. 
 
Поддержка целостности данных в БЭСТе идет на уровне ввода, редактирования  и удаления данных из самого БЭСТа. Если перед тем как вносить изменения в какую-либо таблицу Вы не учитываете её связи с другими таблицами, то потом Вы хоть обреиндексируйтесь - будет ерунда, хотя индексы по каждой отдельной таблице отстроенны правильно! Будет казаться, что индексы слетели.
 
А для того, чтобы корректно работать ТЩАТЕЛЬНО изучите APDX-NN.txt и BASES_NN.dbf в каждом нужном Вам АРМе (в каждом АРМе значение NN - принимает своё значение). | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		masson
 
 
  Joined: 02 Apr 2003 Posts: 12
 
 
 
  | 
		
			
				 Posted: 07 Apr 2003 15:11    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | Алексей З. wrote: | 	 		  | Я работаю с БЭСТом более 6 лет. Всегда "обслуживал" его Фоксом.  | 	  
 
 
Попробуй завести фоксом запись в Sclad\MPrim.dbf (через APPEND BLANK - GATHER) либо просто отредактируй поле Name руками. У MPrim нет никаких связей, но индексы полетят, это увидишь в БЭСТе (если вывод всего справочника больше чем размера экрана) | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Алексей З.
 
  
  Joined: 08 Jan 2003 Posts: 344 Location: Зызин Алексей Occupation: ЗАО "Ренова", программист Interests: Москва
  | 
		
			
				 Posted: 07 Apr 2003 15:25    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | masson wrote: | 	 		  | ... У MPrim нет никаких связей... | 	  
 
Это не так. Смотри запись №108 в файле "... \sclad\bases_03.dbf". Сразу не скажу с какими файлами он "пересекается" и по какому индексу (простому или составному). Но если о нем имеется там информация, то думаю - неспроста. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		yermak
 
  
  Joined: 01 Aug 2002 Posts: 45 Location: Ермак Е.Ю. Occupation: ООО "Автоматизированные системы управления" Interests: Владивосток
  | 
		
			
				 Posted: 07 Apr 2003 15:27    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				То: Алексей З.
 
Нельзя таблицы открывать фоксом в монопольном режиме - их тогда сам ADS не сможет открыть пока вы эту таблицу юсаете. Если Нужно просто поправить базы то открывать можно как угодно, тока потом не забудь переиндекить, а если же нужно открыть таблицу во время ее юсанья БЭСТом, то только с SHARED NOUPDATE. Иначе не откроется.
 
На счет установки кодовой страницы я написал в свое время dll кот. ставит кодовую страницу на уже открытые БЭСТом таблицы, можно ее взять на http://nsvisual.com/fox2/sol/index.php?act=view&id=84 _________________ С уважением, Ермак Евгений
 
г.Владивосток | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Алексей З.
 
  
  Joined: 08 Jan 2003 Posts: 344 Location: Зызин Алексей Occupation: ЗАО "Ренова", программист Interests: Москва
  | 
		
			
				 Posted: 07 Apr 2003 15:49    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Как я говорил выше: если мне нужно взять данные из БЭСТа для просмотра или какой-то дальнейшей обработки (например, сделать хитрозавёрнутый отчёт для экономистов) я запускаю заранее подготовленные ПРЕДСТАВЛЕНИЯ, а не таблицы. Представления не блокируют ни таблицы, ни записи, ни заголовки таблиц. И их я могу всегда динамически обновлять.
 
Но если производятся какие-либо исправления в самих таблицах - в этом случае я их открываю ИСКЛЮЧИТЕЛЬНО ЭКСКЛЮЗИВНО!! Естественно, я предварительно выгоняю народ из "ремонтируемой" базы. Иначе - нельзя. Если этого не делать и позволить пользователям работать одновременно с моим ремонтом, то СЛЁТ ИНДЕКСОВ - ГАРАНТИРОВАН. Не зависимо от того, насколько корректно ты работаешь с самими таблицами. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		 |