Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Непонятная ситуация с реквизитом :-( (число прочтений - 1918 )
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Непонятная ситуация с реквизитом :-(
27. Мая 2009 :: 14:23
Печать  
Справочник контрагенты. Добавлен реквизит "Новый", тип число, длина 1.
Неожиданно, по какой-то причине, у всех контрагентов этот реквизит стал равен 0.  НО:
Код
Выбрать все
	тЗапроса = "
	|Клиент = Справочник.Контрагенты.текущийЭлемент;
	|Нов = Справочник.Контрагенты.Новый;
	|Условие(Нов = 1);
	|Группировка Клиент без групп;";

	Запрос = СоздатьОбъект("Запрос");
	Если Запрос.Выполнить(тЗапроса) = 1 Тогда
		тз = СоздатьОбъект("ТаблицаЗначений");
		Запрос.Выгрузить(тз);
		тз.ВыбратьСтроку();
	КонецЕсли;
 


тут в ТЗ есть все требуемые значения      
В тоже время...
Код
Выбрать все
	тЗапроса = "
	|Select
	|*
	|FROM $Справочник.Контрагенты as Спр
	|WHERE $Спр.Новый  = 1";

	глСредаООП = СоздатьОбъект("Общие.СредаРазработки");
	глСредаООП.СоединитьсяС_БД(0);
	тзЗапроса  = глСредаООП.ЗапросК_БД(тЗапроса);  
	тзЗапроса.Сортировать("Descr");
	тзЗапроса.ВыбратьСтроку();
 


в прямом запросе ТЗ пуста О_о
Если заглянуть напрямую в таблицу, то действительно SP7252 (которое соответствует полю "Новый") у всех нули. В тоже время, было обнаружено, что в поле ИННКлиента через пробел стал записыватся этот реквизит "Новый", то есть 772400111 1 или 772500222 0
Как это объяснить? И что делать? (
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Непонятная ситуация с реквизитом :-(
Ответ #1 - 27. Мая 2009 :: 14:24
Печать  
Чтобы было более понятно, добавлю, что реквизит стал нулем только в таблице. В самой 1С в режиме пользователя всё по прежнему отображается корректно
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Непонятная ситуация с реквизитом :-(
Ответ #2 - 27. Мая 2009 :: 14:53
Печать  
Вообще ничего не понимаю Печаль В таблице SC46 какая-то каша в полях, однако 1С работает с таблицей корректно
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Непонятная ситуация с реквизитом :-(
Ответ #3 - 27. Мая 2009 :: 15:15
Печать  
Если получать поля и их значения через XBase то тоже всё корректно...
Если просматривать файл напрямую, то каша Печаль
  
Наверх
 
IP записан
 
ol
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 272
Местоположение: Санкт-Петербург
Зарегистрирован: 24. Января 2009
Пол: Мужской
Re: Непонятная ситуация с реквизитом :-(
Ответ #4 - 27. Мая 2009 :: 17:31
Печать  
ситуация серьезная
  
Наверх
ICQ  
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Непонятная ситуация с реквизитом :-(
Ответ #5 - 27. Мая 2009 :: 17:46
Печать  
Да, только вот не совсем понятно что произошло Печаль
Итог:
- 1С работает нормально
- Если делать выборку 1С++ - каша
- Если делать выборку XBase - нормально
- Если открывать файл sc46.dbf в Excel - каша
- Если открывать файл sc46.dbf в DBFViewer 2000 - нормально
Ужас

это скрин выборки XBase (все корректно)


а это скрин выборки (тотже участок) 1С++ (каша)
  
Наверх
 
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Непонятная ситуация с реквизитом :-(
Ответ #6 - 27. Мая 2009 :: 17:50
Печать  
ol писал(а) 27. Мая 2009 :: 17:31:
ситуация серьезная


Насколько серъезная?
Ничего критичного с базой не творили. Единственное - изменили реквизит комментарий у справочника контрагентов. Был неограниченной длины, сделали 500 симв.

Обновление:
Тааакс, вернул комментарий обратно неограниченной длины - всё вернулось к норме  Злой
Прокомментируйте пожалуйста, что это такое?
  
Наверх
 
IP записан
 
leshik
1c++ donor
Отсутствует



Сообщений: 820
Местоположение: Пятигорск
Зарегистрирован: 22. Апреля 2007
Пол: Мужской
Re: Непонятная ситуация с реквизитом :-(
Ответ #7 - 27. Мая 2009 :: 18:22
Печать  
Реквизиты неограниченной длинны должны быть последними в списке реквизитов.
  
Наверх
IP записан
 
SashaL
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 41
Зарегистрирован: 15. Октября 2008
Re: Непонятная ситуация с реквизитом :-(
Ответ #8 - 27. Мая 2009 :: 18:27
Печать  
leshik писал(а) 27. Мая 2009 :: 18:22:
Реквизиты неограниченной длинны должны быть последними в списке реквизитов.

Насколько помню это критично для SQL, у меня DBF (простите, если забыл уточнить). Кроме того, тут обратная ситуация из неограниченного реквизита сделали ограниченный.
В общем, если делать так:
- Комментарий переименовать в комментарийСтар
- Добавить реквизит Комментарий ограниченной длины
- Заполнить Комментарий значениями КомментарийСтар
- Удалить КомментарийСтар
все проходит нормально, если напрямую комментарий делать ограниченным - такие вот грабли Ужас

Обновление

Прошу прощения, действительно. Если переместить комментарий в конец списка и сделать ограниченным всё нормально. Спасибо за мнение, почему-то был уверен что это только для SQL Улыбка Теперь буду знать где енти грабли зарыты

  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать