|  03.11.2005, 09:44 | #1 | 
| Участник | Методы create(), write() 
			
			Аксапта 3.0 Создаем новую запись в форме. Не сохраняя ее, если стрелкой вниз - отрабатывает сохранение предыдущей записи если CTRL-N - не отрабатывается сохранение. Как можно сделать так, чтобы предыдущая запись всегда сохранялась при создании новой ? | 
|  | 
|  03.11.2005, 10:04 | #2 | 
| Модератор | 
			
			Хм. Возможно, до super() в create датасорса стоит написать myTable_ds.write() Осторожно, возможна ошибка "запись была уже создана" С Уважением, Георгий | 
|  | 
|  03.11.2005, 10:15 | #3 | 
| Участник | 
			
			Если сделать так, то если записей совсем нет в форме, а хотим создать новую. Срабатывает write() на пустую запись со всеми вытекающими последствиями. То ли считать - есть уже хоть одна запись? | 
|  | 
|  03.11.2005, 10:29 | #4 | 
| Moderator | 
			
			Какие свойства у datasource меняли? Какие методы у него перекрыты?
		 
				__________________ Андрей. | 
|  | 
|  03.11.2005, 11:14 | #5 | 
| NavAx | 
			
			В create напишите ds.forseWrite(true).
		 
				__________________ С уважением, Игорь Ласийчук. | 
|  | 
|  03.11.2005, 11:20 | #6 | 
| Moderator | 
			
			To George Nordic & Garic: Ребята, вы помогаете бороться со следствием, а не с причиной. Неплохо бы автору разобраться, в чем причина такого несистемного поведения формы. 
				__________________ Андрей. | 
|  | 
|  03.11.2005, 12:17 | #7 | 
| Участник | 
			
			forma - LedgerJournalTransDaily стандарная. Попробуйте создавать записи по моему алгоритму. Если стрелочка вниз - сначала работает write() для старой , потом Create() для новой. А если CTRL-N - сначала - create() для новой , потом write() для предыдущей | 
|  | 
|  03.11.2005, 12:55 | #8 | 
| Moderator | 
			
			АХАРТА 3.0SP3CU1 Последовательность методов такая же, как и у вас. Результат в обоих случаях одинаков: есть что записывать - записывает, ничего не изменилось - не записывает. 
				__________________ Андрей. | 
|  | 
|  03.11.2005, 13:57 | #9 | 
| Участник | 
			
			Ничего не понимаю. Попробуйте, пожалуста. Ставим точку остановки - на методах create() и write() - LedgerJournalTrans_ds Создаем новый пакет журнала , заходим в строки. Тип счета и корр.счета счет , ставим сумму. запись не сохранена , справа горит * Нажимаем CTRL-N - смотрим, что заходит сначала метод create(), потом write() А если стрелка вниз сначала - write(), потом create()/ А цель моя - мне нужно определенное количество строк Н-р нужно 2 сохранилась певая, сохранилась вторая, а третью, чтобы не при каких обстоятельствах не делать. Если после создания строки нажать "сохранить" все нормально, а если она не сохраненная и CTRL-N - последнюю должен сохранить, а новую все - никак. | 
|  | 
|  03.11.2005, 14:22 | #10 | 
| Moderator | 
			
			Тогда действительно должен помочь совет Георгия.
		 
				__________________ Андрей. | 
|  |