| View previous topic :: View next topic   | 
	
	
	
		| Author | 
		Message | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 13 Sep 2005 13:09    Post subject: Не читается SUM_DATA в \BEST\REAL\book.dbf | 
				     | 
			 
			
				
  | 
			 
			
				Доброго времени суток, коллеги!
 
Есть нужда поработать с книгой продаж, но
 
 
DBUSEAREA(.t.,'SIXCDX','\BEST\DBASE\REAL\book.dbf')
 
MEMOEDIT(sum_data)
 
 
показывает пустышку   (с другими файлами все нормально), хотя book.fpt информацию содержит. Нет ли каких-либо особенностей у этих файликов?
 
 
Заранее спасибо. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 13 Sep 2005 15:58    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Вы в 4+ работаете ?
 
Если да - то
 
Какой DBUSEAREA ????
 
Какой SIXCDX ?????
 
 
Там DBFCDX и указывать его не надо а работать надо
 
NETUSE("MYBOOK",LoadPath()+'\REAL\book.dbf',,.F.)
 
MYBOOK->( MEMOEDIT(sum_data)  ) | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 13 Sep 2005 16:46    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Это БЭСТ-4. 
 
DBUSEAREA() - функция Clipper для открытия dbf-ки.
 
SIXCDX - подключаемый драйвер для работы с dbf-ками и их индексами, используемыми БЭСТ-ом.
 
У меня есть нужда сваять отдельную прогу. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Титов Александр
 
 
  Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
  | 
		
			
				 Posted: 13 Sep 2005 17:11    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | WildCat wrote: | 	 		  Это БЭСТ-4. 
 
DBUSEAREA() - функция Clipper для открытия dbf-ки.
 
SIXCDX - подключаемый драйвер для работы с dbf-ками и их индексами, используемыми БЭСТ-ом.
 
У меня есть нужда сваять отдельную прогу. | 	  
 
Добрый день!
 
Тут вот что имелось ввиду:
 
Для открытия таблиц мы рекомендуем использовать нашу функцию NetUse(), она описана в хелпе, так как там уже указаан драйвер по умолчанию.
 
Если Вы хотите написать отдельную программу, то в параметрах DBUSEAREA необходимо указывать драйвер работы с БД "DBFCDX". _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 13 Sep 2005 17:28    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				DBUSEAREA() срабатывает нормально.
 
MEMOEDIT не воспринимает значение memo-поля SUM_DATA в book.dbf. В book.fpt информация присутствует. Отсюда и вопрос: нет ли каких-либо особенностей в файлах book.* (шифрование или какой-нибудь другой способ обработки)? Для сравнения: help05.dbf открывается нормально, в help05.fpt информация видна при просмотре с помощью текстового вьюера и MEMOEDIT работает нормально. Полный текст тестовой проги - в первом пос | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Титов Александр
 
 
  Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
  | 
		
			
				 Posted: 13 Sep 2005 17:43    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | WildCat wrote: | 	 		  DBUSEAREA() срабатывает нормально.
 
MEMOEDIT не воспринимает значение memo-поля SUM_DATA в book.dbf. В book.fpt информация присутствует. Отсюда и вопрос: нет ли каких-либо особенностей в файлах book.* (шифрование или какой-нибудь другой способ обработки)? Для сравнения: help05.dbf открывается нормально, в help05.fpt информация видна при просмотре с помощью текстового вьюера и MEMOEDIT работает нормально. Полный текст тестовой проги - в первом посте. | 	  
 
Это массив, я думаю, memoedit тут не подойдет. Нужно его просто прочитать как массив, и дальше писать операции по его редактированию. _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 13 Sep 2005 18:05    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Нельзя ли взглянуть на фрагмент кода, который записывает массив в memo-поле? Я, признаться, не совсем представляю себе, как это сделать     напрямую. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Титов Александр
 
 
  Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
  | 
		
			
				 Posted: 13 Sep 2005 18:21    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | WildCat wrote: | 	 		  Нельзя ли взглянуть на фрагмент кода, который записывает массив в memo-поле? Я, признаться, не совсем представляю себе, как это сделать     напрямую. | 	  
 
 	  | Code: | 	 		  //  Структура SUM_DATA :
 
// {;
 
//   {;
 
//     {;
 
//      { сумма вкл. НДС, флаг изменения суммы вкл. НДС },;
 
//      { процент НДС (уникальный номер), флаг изменения процента НДС },;
 
//      { сумма НДС, флаг изменения суммы НДС };
 
//      }
 
//      ..................... (элементы с другими ставками НДС)
 
//    };
 
//   .................... (элементы с дополнительной информацией- пока не используется)
 
//  }
 
 
aDataSum := IF(ValType(Book->SUM_DATA) = "A",Book->SUM_DATA,{{}})
 
Book->(RecLock())
 
Book->SUM_DATA:=aDataSum
 
Book->(DbUnLock()) | 	 
  _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 13 Sep 2005 18:40    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				| Спасибо! Буду пробовать. | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 14 Sep 2005 12:14    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Доброе утро, Александр!
 
Написал я маленький тест:
 
 
clear screen
 
DBUSEAREA(.t.,'DBFCDX','f:\tree.new\real\book','book',.t.,.t.)
 
book -> ( DBSETINDEX('f:\tree.new\real\book') )
 
@ 05,00 say "Field type - "+ValType(book->Sum_Data)
 
a_sum := { {} }
 
@ 06,00 say "a_sum type - "+VALTYPE(a_sum)+" before"
 
a_sum := book->sum_data
 
@ 07,00 say "a_sum type - "+VALTYPE(a_sum)+" after"
 
 
Результат такой:
 
тип поля в базе - М;
 
тип a_sum до a_sum := book-sum_data - A (как и положено) после a_sum := { {} };
 
тип a_sum после a_sum := book-sum_data - С и это стопроцентно согласуется с моими познаниями в Clipper: memo-поля предназначены для хранения символьной информации большого объема из-за ограничения размера полей. На мысль о том, что массив был как-то обработан и результат зашифрован (в этом варианте MEMOEDIT действительно помочь не может из-за наличия спецсимволов в строке) наводит и содержимое book.fpt. Символьная информация, записанная в memo-поле может быть прочитана из fpt-файла обычным текстовым вьюером. В случае с book.fpt это не так. Или я что-то не понимаю?   | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Титов Александр
 
 
  Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
  | 
		
			
				 Posted: 14 Sep 2005 12:41    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | WildCat wrote: | 	 		  Доброе утро, Александр!
 
Написал я маленький тест:
 
 
clear screen
 
DBUSEAREA(.t.,'DBFCDX','f:\tree.new\real\book','book',.t.,.t.)
 
book -> ( DBSETINDEX('f:\tree.new\real\book') )
 
@ 05,00 say "Field type - "+ValType(book->Sum_Data)
 
a_sum := { {} }
 
@ 06,00 say "a_sum type - "+VALTYPE(a_sum)+" before"
 
a_sum := book->sum_data
 
@ 07,00 say "a_sum type - "+VALTYPE(a_sum)+" after"
 
 | 	  
 
На чем Вы пишите, какой компилятор используете, какие библитотеки подключает _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		WildCat
 
 
  Joined: 13 Sep 2005 Posts: 18 Location: Андрей Забабонин Occupation: ОАО "1000 мелочей" Interests: Калининград
  | 
		
			
				 Posted: 14 Sep 2005 12:47    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Язык Clipper 5.2
 
Компилируюсь так:
 
clipper %1 %2
 
rtlink file %1,ctus,rddcdx lib ct,dbfcdx
 
До попыток поработать с book.* никаких проблем не бы | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Титов Александр
 
 
  Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
  | 
		
			
				 Posted: 14 Sep 2005 13:12    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | WildCat wrote: | 	 		  Язык Clipper 5.2
 
Компилируюсь так:
 
clipper %1 %2
 
rtlink file %1,ctus,rddcdx lib ct,dbfcdx
 
До попыток поработать с book.* никаких проблем не было | 	  
 
Тогда понятно: в клиппере библотека dbfcdx не поддерживает работу с массивами, вместо нее необходимо использовать библиотеку и RDD six3. Если нет - могу прислать. _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		nordk
 
 
  Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
  | 
		
			
				 Posted: 14 Sep 2005 13:50    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				Сан Саныч а еще лучше было бы предложить писать не в клиппер а в харборе непосредственно и компилировать и не мучаться ДОСом, а заодно использовать все преимущества харбора перед клиппером применительно к БЭСТу....
 
Другими словами добро пожаловать в рубрику повыше   
 
Если Вы хорошо владете клиппером, то харбор сможете оценить по достоинству, особенно поработав внутри БЭСТа отладчиком.... | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		Титов Александр
 
 
  Joined: 26 Jul 2002 Posts: 975 Location: Титов Александр Александрович Occupation: Компания БЭСТ Interests: Москва
  | 
		
			
				 Posted: 14 Sep 2005 14:03    Post subject:  | 
				     | 
			 
			
				
  | 
			 
			
				 	  | nordk wrote: | 	 		  Сан Саныч а еще лучше было бы предложить писать не в клиппер а в харборе непосредственно и компилировать и не мучаться ДОСом, а заодно использовать все преимущества харбора перед клиппером применительно к БЭСТу....
 
Другими словами добро пожаловать в рубрику повыше   
 
Если Вы хорошо владете клиппером, то харбор сможете оценить по достоинству, особенно поработав внутри БЭСТа отладчиком.... | 	  
 
Да, полностью поддерживаю, харбор - это сказка    _________________ С уважением, Александр Титов, Компания БЭСТ, Москва, отдел разрабо | 
			 
		  | 
	
	
		| Back to top | 
		 | 
	
	
		  | 
	
	
		 |