| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			Struct
			 
			
			Добрый день! 
		
		
		
		
		
		
		
	static void Job55(Args _args) { container packedStruct; Struct s = new Struct(); Struct s1 = new Struct(); Struct s2 = new Struct(); ; s.add("name", "Jane Dow"); s.add("age" , 34); s1.add("struct1", s); packedStruct = s1.pack(); s2 = Struct::create(packedStruct); print s2.toString(); pause; } В 3.0 работает в 4.0 sp2 не работает, вываливается ошибка на строке : s2 = Struct::create(packedStruct); Требуется возможность восстановления из контейнера структуры структур в 4.0.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Ну видимо распаковка в структуру структур в 4ке не поддерживаеццо. Вопрос вот в чём: зачем Вам это понадобилось? Можно попробовать паковать отдельные структуры в отдельные контейнеры, потом склеить эти контейнеры в один, а потом поустанавливать распакованные структуры в результирующую структуру как value
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	Axapta has seduced me deadly!  
			 | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			А вообще можете  сделать что-то типа:  
		
		
		
		
		
		
			X++: struct2.add("struct1",struct1.tostring());struct3=Struct::create(packedstruct2); strStruct1 = struct3.value(struct3.fieldname(0)); // str strStruct1 Вот, ну а из этой строки возобновить исходную структуру или просто выцепить данные - не сложно. Хотя всё-равно геморный случай))). 
				__________________ 
		
		
		
		
		
			Axapta has seduced me deadly!  
			Последний раз редактировалось HorrR; 01.04.2008 в 20:08.  | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Axapta Retail User 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Как вариант: 
		
		
		
		
		
		
		
	X++: static void Job55(Args _args) { container packedStruct; Struct s = new Struct(); Struct s1 = new Struct(); Struct s2; Struct s3; ; s.add("name", "Jane Dow"); s.add("age" , 34); s1.add("struct1", s.pack()); packedStruct = s1.pack(); s2 = Struct::create(packedStruct); s3 = Struct::create(s2.valueIndex(1)); print s3.toString(); pause; }  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Таки да, просто паковать структуру при помещении её в структуру, я вчера так делал, вылетал эрор, а теперь глянул  на код  - я просто к нулевой проперти структуры пытался достучаться по запарке)
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	Axapta has seduced me deadly!  
			 | 
| 
	
 |