Переключение на Главную Страницу Страницы: 1 ... 37 38 [39] 40 41 ... 81 ОтправитьПечать
Очень популярная тема (более 25 ответов) Класс "ПоставщикДанных" - обсуждения. Часть 2. (число прочтений - 399131 )
ziflex
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 76
Местоположение: Владивосток
Зарегистрирован: 05. Мая 2011
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #570 - 12. Января 2012 :: 04:20
Печать  
А у меня так и не получилось заставить тестовую базу работать... :\
  
Наверх
 
IP записан
 
Dolly_EV
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 152
Местоположение: Чита
Зарегистрирован: 22. Октября 2009
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #571 - 12. Января 2012 :: 04:38
Печать  
mozer писал(а) 12. Января 2012 :: 04:07:
вот еще вопрос ... Это мой первый опыт по созданию списка с помощью поставщика данных.
У меня по чему то в стандартном списке справочника, если там писать код по организации вывода в ТП 1С вываливается с ошибкой.
тот же код в обработке написаный работает нормально. У всех так или я чего то не занаю.

Валится при закрытии формы списка.


Имхо, лучше не использовать "родную" форму списка. у меня тоже при закрытии "обвалы" были, так и не поборол. В итоге использую форму Отчета, а чтобы форма не закрывалась по <Esc> - перехватываю нажатие в ПриНажатииКнопкиКлавиатуры по содержанию названия отчета:

Код
Выбрать все
Процедура ПриНажатииКнопкиКлавиатуры(Конт,КодКлавиши,Alt,Shift,Ctrl,Символ,ФСО)

	//Отмена Esc для Отчета-"Журнала", "Справочника"
	Если КодКлавиши = 27 Тогда
		Попытка
			ФормаРасш.УстановитьФорму(Конт.Форма);
			Если Найти(ФормаРасш.ПолныйТипОбъекта(),"Отчет") > 0 Тогда
				Если (Найти(ФормаРасш.ПолныйТипОбъекта(),"Журнал_")>0) ИЛИ (Найти(ФормаРасш.ПолныйТипОбъекта(),"Справочник_")>0)  Тогда
					ФСО = 0;
				КонецЕсли;
			КонецЕсли;
		Исключение

		КонецПопытки;
	КонецЕсли;

КонецПроцедуры
 

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


1C++ rocks!

Сообщений: 324
Местоположение: Пермь
Зарегистрирован: 14. Января 2011
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #572 - 12. Января 2012 :: 04:41
Печать  
Dolly_EV писал(а) 12. Января 2012 :: 04:38:
mozer писал(а) 12. Января 2012 :: 04:07:
вот еще вопрос ... Это мой первый опыт по созданию списка с помощью поставщика данных.
У меня по чему то в стандартном списке справочника, если там писать код по организации вывода в ТП 1С вываливается с ошибкой.
тот же код в обработке написаный работает нормально. У всех так или я чего то не занаю.

Валится при закрытии формы списка.


Имхо, лучше не использовать "родную" форму списка. у меня тоже при закрытии "обвалы" были, так и не поборол. В итоге использую форму Отчета, а чтобы форма не закрывалась по <Esc> - перехватываю нажатие в ПриНажатииКнопкиКлавиатуры по содержанию названия отчета:

Код
Выбрать все
Процедура ПриНажатииКнопкиКлавиатуры(Конт,КодКлавиши,Alt,Shift,Ctrl,Символ,ФСО)

	//Отмена Esc для Отчета-"Журнала", "Справочника"
	Если КодКлавиши = 27 Тогда
		Попытка
			ФормаРасш.УстановитьФорму(Конт.Форма);
			Если Найти(ФормаРасш.ПолныйТипОбъекта(),"Отчет") > 0 Тогда
				Если (Найти(ФормаРасш.ПолныйТипОбъекта(),"Журнал_")>0) ИЛИ (Найти(ФормаРасш.ПолныйТипОбъекта(),"Справочник_")>0)  Тогда
					ФСО = 0;
				КонецЕсли;
			КонецЕсли;
		Исключение

		КонецПопытки;
	КонецЕсли;

КонецПроцедуры
 



Значит по верному пути пошел, что создаю отдельный список в обработке.  Улыбка
По прехвату спасибо. Незнал
  
Наверх
 
IP записан
 
mozer
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 324
Местоположение: Пермь
Зарегистрирован: 14. Января 2011
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #573 - 12. Января 2012 :: 06:19
Печать  
ОбластьТаблицы.Объединение = 1;
ЬТАБЛИЧНОГОПОЛЯ.ERT(390)}: Поле агрегатного объекта не обнаружено (Объединение)

Ошибка при попытке распечатать! ((
  
Наверх
 
IP записан
 
Dolly_EV
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 152
Местоположение: Чита
Зарегистрирован: 22. Октября 2009
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #574 - 15. Января 2012 :: 12:24
Печать  
mozer писал(а) 12. Января 2012 :: 06:19:
ОбластьТаблицы.Объединение = 1;
ЬТАБЛИЧНОГОПОЛЯ.ERT(390)}: Поле агрегатного объекта не обнаружено (Объединение)

Ошибка при попытке распечатать! ((


Йоксель есть? свежий?
  
Наверх
ICQ  
IP записан
 
mozer
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 324
Местоположение: Пермь
Зарегистрирован: 14. Января 2011
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #575 - 16. Января 2012 :: 09:32
Печать  
Есть! Свежий !
  
Наверх
 
IP записан
 
Dolly_EV
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 152
Местоположение: Чита
Зарегистрирован: 22. Октября 2009
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #576 - 16. Января 2012 :: 10:13
Печать  
mozer писал(а) 16. Января 2012 :: 09:32:
Есть! Свежий !

Ну тогда не знаю  Озадачен.. метод "Объединение" - это из Йокселя
  
Наверх
ICQ  
IP записан
 
mozer
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 324
Местоположение: Пермь
Зарегистрирован: 14. Января 2011
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #577 - 16. Января 2012 :: 12:05
Печать  
vandalsvq писал(а) 11. Января 2012 :: 11:25:
mozer, не туда смотришь.
Делаешь 2 поставщика. При активизации строки первого изменяешь  отбор второго + обновление второго. Но тебе надо знать список карт, его получаешь из заранее созданного параметризированного запроса (чтобы было побыстрее). Вот и все в принципе.

Все сделал отбор делается все круто, но сейчас у меня по умолчанию поиск идет по ТП карт, а нужно по ТП клиентов.
Как побороть?
Тоесть фокус всегда на ТП карт.
  
Наверх
 
IP записан
 
Igor Nikolaenko
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 47
Зарегистрирован: 01. Апреля 2010
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #578 - 16. Января 2012 :: 21:04
Печать  
Спасибо за замечательное обновление класса.

В ПоставщикДанных.ВыборГруппы.ert необходимо внести исправление, а то выбор групп корректно работает только для справочника Контрагенты:

ПоставщикДанных.ВыборГруппы.ert
Процедура ЗаполнитьДанныеУзлаДерева(РодительЗначение = "")
     Если ПустоеЗначение(РодительЗначение) = 1 Тогда
           РодительЗначение = ПолучитьПустоеЗначение("Справочник.Контрагенты");
     КонецЕсли;

Заменить на:
           РодительЗначение = ПолучитьПустоеЗначение("Справочник." + ВидСправочника);
  
Наверх
 
IP записан
 
Dolly_EV
Full Member
***
Отсутствует


1C++ rocks!

Сообщений: 152
Местоположение: Чита
Зарегистрирован: 22. Октября 2009
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #579 - 17. Января 2012 :: 07:48
Печать  
В ПоставщикДанных.Сервис.ert добавил сверху атрибуты:
Код
Выбрать все
Перем КартинкаТабличногоПоля Экспорт;
Перем КартинкаКоманднойПанели Экспорт;
 


а то перестало работать "КартинкаТП = ПДСервис.КартинкаТабличногоПоля;"
  
Наверх
ICQ  
IP записан
 
vandalsvq
1c++ power user
Отсутствует


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

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #580 - 17. Января 2012 :: 08:44
Печать  
Dolly_EV, смотри в сторону класса "Библиотека картинок". Теперь он заведует всей этой частью (библиотека может быть создана самостоятельно, а может быть получена из созданного поставщика данных).

Igor Nikolaenko, ОК учту.

Смотрю начинается "отход" от нового года Улыбка))) это радует Улыбка
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
vandalsvq
1c++ power user
Отсутствует


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

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #581 - 17. Января 2012 :: 21:40
Печать  
Уже почти официальная версия 4.3.1 (от 18.01.12 г.). Пока исправил 2-е ошибки, с поставщиком проводок и с деревом при выборе групп.
Скоро закончу и выложу полностью официальную версию

+ обновил публикацию на инфостарте. уфффф....
  

1Cv7_ext_TF_007.rar ( 990 KB | Загрузки )

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


1C++ rocks!

Сообщений: 152
Местоположение: Чита
Зарегистрирован: 22. Октября 2009
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #582 - 18. Января 2012 :: 00:22
Печать  
vandalsvq писал(а) 17. Января 2012 :: 08:44:
Dolly_EV, смотри в сторону класса "Библиотека картинок". Теперь он заведует всей этой частью (библиотека может быть создана самостоятельно, а может быть получена из созданного поставщика данных).

Чтобы оптимизировать делаем так:
в Глобальном:
Код
Выбрать все
Перем глПД_БиблиотекаКартинок Экспорт;
...
глПД_БиблиотекаКартинок=СоздатьОбъект("ПоставщикДанных.БиблиотекаКартинок"); 



При инициализации поставщика:
Код
Выбрать все
	ПоставщикДанных = СоздатьОбъект("ПоставщикДанных");
	ПоставщикДанных.БиблиотекаКартинок = глПД_БиблиотекаКартинок;
	ПоставщикДанных.ТипЗначений = "Справочник.мбИдентификаторы";
 


Я правильно понял?

Доку еще тогда надо подправить, "перекочевать" атрибуты "КартинкаТабличногоПоля, КартинкаКоманднойПанели" из "Сервис" в "БиблиотекаКартинок"
« Последняя редакция: 18. Января 2012 :: 02:48 - Dolly_EV »  
Наверх
ICQ  
IP записан
 
mozer
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 324
Местоположение: Пермь
Зарегистрирован: 14. Января 2011
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #583 - 18. Января 2012 :: 06:49
Печать  
Проблема с 2 ТП !
в 1 ТП клиенты во 2 ТП карты.
Сделал отбор по активному элементу ТП 1 в ТП 2
Начинаю поиск по фамилии клиента, Строка поиска набирается в ТП 2.
Как переназначить поиск на ТП 1?
Как перевести фокус на ТП 1 без отработки события при активизации строки.
  
Наверх
 
IP записан
 
vandalsvq
1c++ power user
Отсутствует


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

Сообщений: 2487
Местоположение: Уфа
Зарегистрирован: 18. Июля 2007
Пол: Мужской
Re: Класс "ПоставщикДанных" -обсуждения. Часть 2.
Ответ #584 - 18. Января 2012 :: 08:32
Печать  
Dolly_EV, про библиотеку картинок ты правильно понял. Именно так и планируется работа. Документацию постараюсь не забыть доделать.

mozer, нужен тест... можно например на стандартной бухе сделать я бы посмотрел если будет повторяться.
  

Отхожу от дел. Долго и мучительно.
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 37 38 [39] 40 41 ... 81
ОтправитьПечать