|  12.09.2006, 16:17 | #1 | 
| Участник |   
			
			День добрый, уважаемые участники форума. Тут столкнулся кое с какой проблемкой, даже стыдно как-то говорить...     Для доступа к таблицам в нави используются типы Record и Recordref, в зависимости от условия. Если надо связать Recordref с таблицей, то используем Recordref.OPEN и всё тип-топ. А как быть, когда таблица находится в другой базе и/или на другом серваке? Вариант типа Recordref.OPEN(Database::TableName) ( где Database - имя базы данных, а TableName - таблица) не катит: нави ругается, на необъявленные переменные. Подскажите пожалуйста, где я туплю? | 
|  | 
|  12.09.2006, 17:34 | #2 | 
| Участник | 
			
			Все это работает в текущей базе а для доступа для другой базы или серверу это неверно. Это просто невозможно по моему
		 | 
|  | 
|  12.09.2006, 17:34 | #3 | 
| Участник | 
			
			Нигде. Невозможно привязать RecordRef к таблице в другой базе. Это всего лишь ссылка на любую нав. таблицу.
		 
				__________________ Должен остаться только один. | 
|  | 
|  12.09.2006, 18:56 | #4 | 
| NavAx | 
			
			Если речь про навыжн на SQL-серваке: Создайте вьюху, которая показывает таблицу из другой фирмы. В Навыжне создайте таблицу, которая показывает вьюху. Поможет?   
				__________________ "Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери | 
|  | 
|  13.09.2006, 09:41 | #5 | 
| Участник | |
|  | 
|  13.09.2006, 10:12 | #6 | 
| Участник | 
			
			Поясню, зачем мне это нужно:  Есть две базы. В одну из них ежедневно (иногда дважды в день) вносится курс валют (табл. 330 - Currency Exchange Rate). Требование заключалось в том, чтобы при вводе курса в одну базу, в другую он вносился автоматически. Это можно реализовать на самом SQL серваке, в триггере таблички при апдейте. Помимо этого попросили создать две кнопки на форме типа "обновить кукрс валюты за определённую дату" и "обновить за всё время". Эти кнопари должны были копировать либо курс за определённое число, либо содержимое всей таблицы с курсами валют из одной базы в другую. Хотелось бы сделать это средствами самого нави, а не играться на серваке, если такое возможно. | 
|  | 
|  13.09.2006, 10:52 | #7 | 
| Участник | 
			
			Если сервер не трогать - то только через АДО.
		 | 
|  | 
|  13.09.2006, 11:15 | #8 | 
| Участник | Цитата: 
		
			Сообщение от Neovision
			   Поясню, зачем мне это нужно:  Есть две базы. В одну из них ежедневно (иногда дважды в день) вносится курс валют (табл. 330 - Currency Exchange Rate). Требование заключалось в том, чтобы при вводе курса в одну базу, в другую он вносился автоматически. Это можно реализовать на самом SQL серваке, в триггере таблички при апдейте. Помимо этого попросили создать две кнопки на форме типа "обновить кукрс валюты за определённую дату" и "обновить за всё время". Эти кнопари должны были копировать либо курс за определённое число, либо содержимое всей таблицы с курсами валют из одной базы в другую. Хотелось бы сделать это средствами самого нави, а не играться на серваке, если такое возможно. | 
|  | 
|  13.09.2006, 11:36 | #9 | 
| NavAx | 
			
			Факт. Почему не сделать из базы с курсами своевременную выгрузку в файлик, а в Навыжне, соответственно, загрузку? 
				__________________ "Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери | 
|  | 
|  13.09.2006, 16:17 | #10 | 
| Участник | Цитата: 
		
			Почему не сделать из базы с курсами своевременную выгрузку в файлик, а в Навыжне, соответственно, загрузку?
		
	 Извините, наверное я не точно сформулировал задачу. Есть две Базы А и В. В базу А заносится курс валюты. Кнопки следует расположить на форме базы В так, чтобы пользователи только тупо нажимали на них и получали курс из своей базы. При этом им не нужно знать откуда эти курсы копируются. Как реализовать выгрузку в файл данных из базы А, находясь при этом в базе В? | 
|  | 
|  13.09.2006, 16:48 | #11 | 
| Участник | Цитата: 
		
			Сообщение от Neovision
			   Цитата: 
		
			Почему не сделать из базы с курсами своевременную выгрузку в файлик, а в Навыжне, соответственно, загрузку?
		
	 Извините, наверное я не точно сформулировал задачу. Есть две Базы А и В. В базу А заносится курс валюты. Кнопки следует расположить на форме базы В так, чтобы пользователи только тупо нажимали на них и получали курс из своей базы. При этом им не нужно знать откуда эти курсы копируются. Как реализовать выгрузку в файл данных из базы А, находясь при этом в базе В? Далее в базе B при нажатии на кнопку, читаем файл и берем те записи, которые нужны. | 
|  | 
|  13.09.2006, 17:15 | #12 | 
| Участник | Цитата: 
		
			В базе А при добавлении/изменении записи (как вариант на OnValidate() поля "Relational Exch. Rate Amount") выгружайте эту запись либо всю таблицу в файл (можно тектовый через датапорт, тогда и ADO не нужен). Можно открывать файл, обновлять только эту запись. В общем, тут как фантазия подскажет и какое нужно быстродействие. Далее в базе B при нажатии на кнопку, читаем файл и берем те записи, которые нужны. С вводом текущего курса разобрался так: Создал на серваке процедуру для копирования курса определённой валюты в базу В на данное число. В триггере базы А при добавлении/изменении записи вызываю эту процедуру копирования. А что насчёт тех двух кнопарей, то наверное придётся, как сказал EDVard, воспользоваться ADO. Спасибо большое всем за помощь   | 
|  | 
|  13.09.2006, 18:25 | #13 | 
| Участник | 
			
			Если уж до сервака таки добрались - сделайте таблицы валют и курсов базы Б как вьюхи на таблицы валют и курсов базы А. И забудьте о кнопках, тормозах и триггерах. Правда, возможно юзерам базы Б, которые захотят добавить курс в базу А через вьюху, придется права db_owner на сервере дать. А может - и нет. Как система настроена. | 
|  |