|  20.05.2005, 11:13 | #1 | 
| Участник |  Как из формы Form2 обновить записи на форме Form1? 
			
			Как из формы Form2 обновить записи на форме Form1?
		 | 
|  | 
|  20.05.2005, 11:16 | #2 | 
| Программер | 
			
			Не знаю правильно ли понял задачу. Но в Главной книге в Общем журнале когда открываешь Строки, то при смене текущей записи в форме Общий журнал, строки в форме Строк тоже обнавляются. Может там посмотреть.
		 | 
|  | 
|  20.05.2005, 11:24 | #3 | 
| Moderator | 
			
			Куча способов. Зависит от того, что знает Form2 о Form1. Самое простое, если известно args.record() - запись из формы Form1: PHP код: 
			
				__________________ Андрей. | 
|  | 
|  20.05.2005, 12:15 | #4 | 
| Участник | 
			
			Dron AKA andy а куда нужно этот код вставить? и как Аксапта догадается какую форму обновлять? | 
|  | 
|  20.05.2005, 12:36 | #5 | 
| Moderator | 
			
			Куда поставить - это Вам решать. Да хоть на кнопку "Обновить форму Form1"   Зависит от события, по которому должна обновляться форма. А откуда узнает - я ж написал: "Если известно args.record()". Т.е. при открытии формы Form2 в args.record() была занесена текущая запись, вручную или автоматом (при открытии через menuitem). 
				__________________ Андрей. | 
|  | 
|  20.05.2005, 13:35 | #6 | 
| Участник |   
			
			не могу понять. Более подробно распишу проблему: 1. из формы Form1(datasource Table1) открываю форму Form2(datasource Table2). 2. Из формы Form2 вставляю записи в таблицу Table1(форма Form1) следующим кодом: PHP код: 
			 | 
|  | 
|  20.05.2005, 13:36 | #7 | 
| Участник | 
			
			Опечатка Form1 в коде на самом деле это Table1
		 | 
|  | 
|  20.05.2005, 13:47 | #8 | 
| Moderator | 
			
			Ну тогда начнем с начала: 1. Как открываете Form2 из Form1? (текст метода или через menuitem) 
				__________________ Андрей. | 
|  | 
|  20.05.2005, 14:09 | #9 | 
| Участник | 
			
			через MenuItemName
		 | 
|  | 
|  20.05.2005, 14:25 | #10 | 
| Moderator | 
			
			Т.е. на форме Form1 лежит кнопка menuItemButton, и clicked() у нее не перекрыт? Тогда в args.record() автоматом записывается текущая запись из datasource формы Form1 (кстати, этот источник данных на форме один? если нет, проверяйте свойство datasource у этой кнопки, должен быть выбран нужный источник). Обновляем его из приведенного выше метода формы Form2 таким образом: PHP код: 
			
				__________________ Андрей. | 
|  | 
|  20.05.2005, 15:13 | #11 | 
| Участник | 
			
			Спасибо заработало!!! Table2_ds.research() по другому поводу здесь(Table2 временная таблица, и после select по ней в форме отображаются данные последнего прохода в while select, поэтому я и воткнул Table2_ds.research() ) | 
|  | 
|  20.05.2005, 16:03 | #12 | 
| Moderator | 
			
			Ну это тоже некрасиво - research() перемещает курсор в начало таблицы. Надо сделать так: PHP код: 
			
				__________________ Андрей. | 
|  | 
|  23.05.2005, 11:47 | #13 | 
| Участник | 
			
			Сейчас у меня возникла опять проблема с обновлением форм, только уже в другом случае: Есть две формы Form1(datasource Table1) и Form2(datasource Table2), из одной формы из текущей записи Form1 открываю вторую форму Form2 через MenuItem. Делаю в init второй формы Form2 ссылку на текущую запись PHP код: 
			PHP код: 
			При таком коде получается эффект, что все формы Form1 Form2 обновляются позиционирование на текущих записях слетает, а в форме Form2 вообще записи текущего дня начинают отображаться. Как сделать чтобы обновлялась только текущая запись Form1, а Form2 оставалась как есть? PS: Метод fds.reread() почему то не работает. | 
|  | 
|  24.05.2005, 11:21 | #14 | 
| Moderator | Цитата: PHP код: 
			
				__________________ Андрей. | 
|  | 
|  24.05.2005, 11:28 | #15 | 
| Moderator | 
			
			Вернее, в данном случае (обновляются данные напрямую в буфере DS) нужно не обновлять DS, а вызвать fDS.write() для сохранения изменений.
		 
				__________________ Андрей. | 
|  | 
|  24.05.2005, 11:53 | #16 | 
| Участник | 
			
			Помогло вот так PHP код: 
			 | 
|  | 
|  | 
| 
 |