Переключение на Главную Страницу Страницы: 1 ... 5 6 [7] 8 9 ... 81 ОтправитьПечать
Очень популярная тема (более 25 ответов) Класс "ПоставщикДанных" - обсуждения. Часть 2. (число прочтений - 376750 )
vandalsvq
1c++ power user
Отсутствует


Я всего лишь als-особиратель
;-)

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #90 - 03. Декабря 2010 :: 05:37
Печать  
На реквизиты справочника (по метаданным) + по колонкам добавленным методом "ДобавитьКолонкуДанных" отборы не надо добавлять, они создаются автоматически. Т.е. в твоем случае просто пиши:
Код
Выбрать все
Отбор = ПоставщикДанных.ТабличноеПоле.Отбор;
ОтборПоФамилии = Отбор.Фамилия;
ОтборПоФамилии.Использование = 1;
ОтборПоФамилии.ВидСравнения = "НачинаетсяС";
ОтборПоФамилии.Значение = "Иванов";
ПоставщикДанных.Обновить(); 



А версия указана в ПоставщикДанных.Версия Улыбка
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #91 - 06. Декабря 2010 :: 03:50
Печать  
Спасибо... с отборами вроде примерно разобралась...
Но - сейчас настал случай всех злее...
Дело в том, что я пытаюсь разобраться (и доработать) в устройстве конфы, написанной с использованием вашего класса. Класс замечательный - но разбирательство идет увы, тяжело. Особенно еще и потому, что с 1С++ практически не работала раньше.
Итак, на одной и той же машине (чистая виртуалка 2003 Server + 2005 MS SQL):
1) Есть БД на которой вроде бы почти все работает. Но - на ней используется очень старая, еще 2009 года библиотека. И есть странный глюк с обновлением формы (по нему позже отдельно, похоже спрошу, не суть). БД загружалась с архива мной, но не настраивалась особо.
2) Есть ваш пример, md. Загружаю его, загружаю с инета требуемые библиотеки, рекомендованные по инструкции версии  - работает.
3) И есть БД, которую создаю я. Создала БД, код загрузки библиотек  скопировала с вашего примера в главный модуль. Папку с классами и папку с dll поместила в папку ИБ (скопировала с вашего примера и доложила библиотек - их состав такой же как на БД №2 с вашего примера).
Компоненты загружаются (в частности, появляются закладки FormEx и 1С++). Но код загрузки ПоставщикаДанных (практически копия вашего) не работает. Печаль
Получаю
Код
Выбрать все
{Справочник.Тест.Форма.Модуль(12)}: Неудачная попытка создания объекта (ПоставщикДанных) 



Такое ощущение, что классы которые я положила в папку, не видимы.
Уже все перепроверила - все чуть ли не идентично в 2 и 3 случаях, но  в случае 3 - не работает Печаль
Может вы меня на мысль какую наведете... Печаль
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #92 - 06. Декабря 2010 :: 05:41
Печать  
Навожу на мысль: defcls.prm
  
Наверх
ICQ  
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #93 - 06. Декабря 2010 :: 06:07
Печать  
ага, про него знаю
но во всех трех случаях - это один и тот же файл, лежащий в одном и том же месте... Печаль
правда, по инструкции к 1C++ он должен лежать, как я поняла, в каталоге ИБ. А лежит в КаталогИБ\SystemData, что меня несколько смущает. Но ведь в двух-то случаях из трех работает...

UPD: ага! а вот про то, что он может быть не только файлом, но и обработкой я не знала - в другой теме навели...
действительно, я ее как обработку не создавала, а в двух остальных БД она есть...
Вопрос решен, спасибо! Улыбка
  
Наверх
 
IP записан
 
sashas09
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 148
Местоположение: Киев
Зарегистрирован: 26. Апреля 2007
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #94 - 06. Декабря 2010 :: 16:16
Печать  
День добрый

Вопрос по поставщикуДанных

Почему "отборПоЗначениюВТекущейКолонке" снимает уже существующий отбор?


и у меня что-то ничего не получается с поставщикомДанных.регистр

можно привести минимальный функциональный пример показа списка движений регистра?

  
Наверх
ICQ  
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #95 - 07. Декабря 2010 :: 01:13
Печать  
Еще один вопрос. Никак не могу побороть следующую проблему:
есть форма, на форму кладу ПолеВвода и кнопку, сбрасывающую значение этого поля.
Если на форме не подключен ПоставщикДанных, то кнопка сбрасывает значение, и в переменной, и визуально.
Если на форму подключить ПоставщикДанных, сброс значения не работает. Точнее, работает, но сбрасывает значение только в переменной, а визуально данные на форме не обновляются до тех пор, пока пользователь не введет значение в какое-нибудь другое ПолеВвода.
(В переменной - это имеется ввиду, что если ПолеВвода называется рфПоле, то при нажатии на форме кнопки с формулой Сообщить(рфПоле), данные выводятся корректные, но на самой форме они видны старые)
Форма.Обновить не помогает... Печаль Не подскажете, как с этим быть?

(для реальной задачи надо несколько полей и одну кнопку, сбрасывающую все значения, но не работает и на одном поле и кнопке с формулой вида рфПоле="").

UPD: нашла в каких случаях оно работает. Работает, если на форме списка многострочная часть находится в границах формы, даже если она уменьшена до миллиметров. Если эту часть унести за границы формы - обновление не работает. Сейчас попробую ее просто скрыть...

UPD2: если ее скрыть, то обновление тоже не работает. Печаль То есть обновление работает только в том случае, если на форме многострочная часть есть и видима. Как-то с этим можно побороться? Сброс значений нужен позарез, но и многострочную часть не хочется оставлять, пусть даже крохотную
  
Наверх
 
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #96 - 07. Декабря 2010 :: 04:05
Печать  
Другая проблема, посерьезнее.
При закрытии окна с формой, имеющей ПоставщикДанных, вылетает 1С с ошибкой.
Если  согласиться запустить дебаггер в нем отображается такое:
'1cv7s.exe': Loaded 'C:\WINDOWS\system32\vbscript.dll', No symbols loaded.
Unhandled exception at 0x02cb5708 in 1cv7s.exe: 0xC0000005: Access violation.
First-chance exception at 0x02cb5708 in 1cv7s.exe: 0xC0000005: Access violation.
The thread 'Win32 Thread' (0xc98) has exited with code 0 (0x0).
Unhandled exception at 0x02cb5708 in 1cv7s.exe: 0xC0000005: Access violation.
и так далее Access violation лезут, я прерываю.

1С НЕ вылетает, если:
1) закомментировать строку //пПоставщикДанных.КонтейнерКоманднойПанели = "кнКоманднаяПанель";
2) На открывшейся форме через кнопку командной панели хотя бы раз до закрытия открыть окно с Отбором (там где настройка быстрого отбора). Возможно нажатие других кнопок тоже помогает, но не всех точно, например нажатие Обновить не помогает.

Офис установлен (2003-й).

Текст модуля прилагаю.
Версии: 1С  SQL версия 7.70.27
1С++ 3.2.1.10 (тот что прилагался к ПоставщикДанных) UPD: Версия 1С++ не та, что выше написана, а 3.2.3.2 (это я с другой базы списала). Проблема по прежнему актуальна, с версией 3.2.3.2 так же все выглядит
FormEx 2.05.101 beta (может дело в ней? но не нашла где взять 2.05.92, на сайте только либо старее, либо бета нашла)
ПоставщикДанных последний, скачан с этого форума (UPD: Версия показывает 4.1.1 01.11.2010)


« Последняя редакция: 07. Декабря 2010 :: 18:59 - Kateryne »  

TestCrash.txt ( 1 KB | Загрузки )
Наверх
 
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #97 - 07. Декабря 2010 :: 17:01
Печать  
Интересно... Ошибка из предыдущего поста (с вылетом при закрытии формы) возникает, если код писать в модуле ФормыСписка в справочнике.
Если тот же самый код написать на форме Обработки, то все работает (код абсолютно идентичен, 100%, дизайн формы тоже скопирован, нет только многострочной части на форме).
И на форме карточки справочника - тоже работает вроде (код немного отличается, но все же похож очень сильно)
Так и должно быть? То есть - работает ли класс с формами списка? Или где-то какой-то нюанс есть, который я упускаю? Такое ощущение что проблема как-то связана с многострочной частью.
  
Наверх
 
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #98 - 07. Декабря 2010 :: 19:01
Печать  
Подготовь тестовую конфигурацию, чтоб другие у себя смогли посмотреть
  
Наверх
 
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #99 - 07. Декабря 2010 :: 22:27
Печать  
Я нашла причину вылетов! Уф... попарилась.
Не знаю только теперь, как ее трактовать.

Дело было в файле 1Cv7.CFG, лежащем в папке пользователя.
А точнее, в параметре UserValuesProfile
При значениях UserValuesProfile определенного вида - происходил вылет.
Почистила настройки, создала файл снова - вылетов нет! Что не может не радовать.
Однако, нужна ваша консультация. По идее этот файл с настройками формировался не вручную, а системой.
Можете объяснить почему происходил вылет, и кто тут виноват - 1С сформировала файл с настройками некорректного формата, или формат настроек корректен, но не может обработаться ПоставщикомДанных?

Выкладываю файл с конфигурацией, и файлы с настройками - с вылетом и без.

Файл с настройками и вылетом:
  

crash_1Cv7_CFG.txt ( 3 KB | Загрузки )
Наверх
 
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #100 - 07. Декабря 2010 :: 22:29
Печать  
файл с настройками без вылета
  

notcrash_1Cv7_CFG.txt ( 3 KB | Загрузки )
Наверх
 
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #101 - 07. Декабря 2010 :: 22:30
Печать  
конфигурация
  

1Cv7_010.MD ( 91 KB | Загрузки )
Наверх
 
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #102 - 07. Декабря 2010 :: 22:34
Печать  
Так что вопрос с вылетами для меня хотя и интересен, но уже не так актуален.

А вот предыдущий вопрос про обновление данных на форме при сбросе поля - по прежнему актуален.

Пример конфигурации, которую я выложила, как раз и включает единственный объект - справочник Тест, на форме Списка которого проявляется проблема с обновлением данных.
  
Наверх
 
IP записан
 
Anatol
Senior Member
****
Отсутствует


тыц, пыц, тыц!!!

Сообщений: 412
Зарегистрирован: 24. Апреля 2009
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #103 - 08. Декабря 2010 :: 06:37
Печать  
Kateryne писал(а) 07. Декабря 2010 :: 22:27:
Я нашла причину вылетов!
....
А точнее, в параметре UserValuesProfile


сори за оффтопик, но как ВЫ до такого дошли?  Ужас
  
Наверх
wwwICQ  
IP записан
 
Kateryne
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Зарегистрирован: 30. Марта 2010
Пол: Женский
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #104 - 08. Декабря 2010 :: 06:51
Печать  
Стала делать тестовый пример, как попросили выше. Перенесла с другой базы в пустую базу класс, который у меня не работал - а он, сволочь такая, заработал Улыбка
Начала разбираться, чем отличается база 1 от базы 2. Глобальник один, класс один, библиотеки одинаковые, папка с exe 1с одинаковая - значит отличие в самой БД или пользователях. Попробовала создать нового пользователя - заработало и в моей базе.
А дальше уже вопрос времени - стала удалять по одному файлу с уже существующего юзера. Заработало на удалении 1Cv7.CFG.
Скопировала его, создался дефолтный. Через текстовый Compare (сравнение текстов) начала сравнивать, чем они отличаются, и постепенно по одному параметру приводить файлы в соответствие друг другу. У нового пользователя сломалось все на приведении в соответсвие параметра массива значений UserValuesProfile Улыбка
Попарилась, конечно...
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 5 6 [7] 8 9 ... 81
ОтправитьПечать