Переключение на Главную Страницу Страницы: 1 ... 56 57 [58] 59 60 ... 81 ОтправитьПечать
Очень популярная тема (более 25 ответов) Класс "ПоставщикДанных" - обсуждения. Часть 2. (число прочтений - 376220 )
Igor Tsapko
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 2
Местоположение: Украина
Зарегистрирован: 19. Июня 2012
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #855 - 22. Сентября 2012 :: 13:35
Печать  
Цитата:
Как бы заставить обработку возвращать выбранный элемент, если оригинальный список был открыт в режиме выбора через стандартную кнопку <...>

Почти поборол эту проблему. Делаю так:
В модуле формы оригинального списка:

Код
Выбрать все
Процедура ПослеОткрытия()
        спПараметров = СоздатьОбъект("СписокЗначений");
	спПараметров.ДобавитьЗначение(ТекущийЭлемент());
	спПараметров.ДобавитьЗначение(Форма.РежимВыбора());
	спПараметров.ДобавитьЗначение(Контекст);
	ОткрытьФорму("Обработка.НовыйСправочникТМЦ", спПараметров);
КонецПроцедуры

Процедура СделатьВыбор(Элемент) Экспорт
	Форма.ВыполнитьВыбор(Элемент);
КонецПроцедуры
 



В модуле формы нового справочника ("Обработка.НовыйСправочникТМЦ")
Код
Выбрать все
Процедура ТП_Выбор(ТипРегиона, Стр, Колонка)
	Если ПустаяСтрока(Стр) = 1 Тогда
		Возврат;
	КонецЕсли;

	Если Данные.РежимВыбора = 0 Тогда
		ОткрытьФорму(Данные.ТекущаяСтрока);
	Иначе
		Парамс = СоздатьОбъект("СписокЗначений");
		Парамс.ДобавитьЗначение(Данные.ТекущаяСтрока);
		Сервис.ВыполнитьПроцедуру(Форма.Параметр.ПолучитьЗначение(3), "СделатьВыбор", Парамс);
		Форма.Закрыть();
	КонецЕсли;
КонецПроцедуры  



В итоге в форму документа возвращается выбранное значение, проблема только в том, что на экране помимо новой формы висит стандартная форма справочника. Закрывать ее нельзя, ибо через нее связь с формой документа. Ее бы спрятать Печаль Может есть решения для этого?
  
Наверх
 
IP записан
 
zk96
Senior Member
****
Отсутствует


1C++ rocks!

Сообщений: 320
Местоположение: Киев
Зарегистрирован: 15. Ноября 2009
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #856 - 24. Сентября 2012 :: 06:16
Печать  
А зачем вообще открывать форму списка справочника? Для чего это тебе нужно?
Открывай сразу обработку.
То есть
Код
Выбрать все
Процедура ПриНачалеВыбораЗначения(Ид,ФСО)
Если Ид = "ТМЦ" Тогда
ФСО = 0;
Параметры = ...
ОткрытьФорму("Обработка.НовыйСправочникТМЦ",Параметры);
КонецЕсли;
КонецПроцедуры
 


Ну а в обработке при выборе значения:
Код
Выбрать все
Форма.ВыполнитьВыбор(ВыбранныйЭлемент);
Форма.Закрыть();
 


Или, если не хочешь править всю конфигурацию, перхватывай
событие ПриНачалеВыбораЗначения и делай там это.
  
Наверх
 
IP записан
 
Igor Tsapko
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 2
Местоположение: Украина
Зарегистрирован: 19. Июня 2012
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #857 - 27. Сентября 2012 :: 08:16
Печать  
Все оказалось гораздо проще:
Kateryne писал(а) 07. Декабря 2010 :: 22:27:
Я нашла причину вылетов! Уф... попарилась.
Не знаю только теперь, как ее трактовать.

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

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

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

  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #858 - 27. Ноября 2012 :: 10:46
Печать  
Не работает командная панель в поставщике данных
Кнопки создались, нажимаются, но никакой реакции нет
На моем компе (XP) и другом (Win 7) работает
А на том, котором нужно - нет (Win 7 32 бита)
Не заходит в ButtonClick
Куда копать? Что в системе подправить?
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #859 - 27. Ноября 2012 :: 11:06
Печать  
запусти это, должно заработать потом


ЗЫ: MSCOMCTL.OCX еще зарегь через regsvr32
  

_____________________008.ert ( 96 KB | Загрузки )
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #860 - 27. Ноября 2012 :: 11:11
Печать  
Мысли насчет реестра были, но куда лезть в данном случае без понятия
Спасибо большое, будем пробовать
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #861 - 27. Ноября 2012 :: 11:14
Печать  
MSCOMCTL.OCX - это который в систем32?
У меня их три оказалось в разных местах, когда-то скачивал для конструктора Улыбка
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #862 - 27. Ноября 2012 :: 11:15
Печать  
ага.. по идее, лучше иметь все одной версии
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #863 - 27. Ноября 2012 :: 11:16
Печать  
А 1сpp какой версии еще ?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #864 - 27. Ноября 2012 :: 11:18
Печать  
+ еще есть момент, на какой контрол натянут активикс - на кнопку или на текст. Там тоже будет разное поведение событий.
  
Наверх
 
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #865 - 27. Ноября 2012 :: 11:49
Печать  
1cpp - 3.2.2.5
Обработка сказала про отсутствие файла comdlg32.ocx
на кнопку натянуто
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #866 - 27. Ноября 2012 :: 11:55
Печать  
ешкин кот, где взять этот файл?
на том компе где работает его нет тоже

update: скачал, надеюсь подойдет
на первый взгяд заработало! УРА!
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Вадимко
God Member
*****
Отсутствует


Нам бы чего про ОдноЦэ...

Сообщений: 1048
Местоположение: Минск
Зарегистрирован: 24. Мая 2006
Пол: Мужской
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #867 - 27. Ноября 2012 :: 12:31
Печать  
Вроде ОК.
Епрст, спасибо, не первый раз выручаешь   Очень довольный
  

Кампутер, кофе и сигареты - это очень плохо для моего здоровья...
Наверх
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #868 - 27. Ноября 2012 :: 12:34
Печать  
поделка, кстати, Абрахамса..
  
Наверх
 
IP записан
 
ParaWiz_
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 9
Местоположение: Томск
Зарегистрирован: 19. Июля 2011
Re: Класс "ПоставщикДанных" - обсуждения. Часть 2.
Ответ #869 - 03. Декабря 2012 :: 09:24
Печать  
Вопрос, почему вот такая вот конструкция выдает 0 результатов, при том если все то же самое делать отбором на форме то все работает .... а, да работает неправильно только последний отбор с видом сравнения ВСписке
[code]
//--------------------------------------------
Процедура ИнициализацияПоставщикДанныхОперации()
  СодержанияОпераций = СоздатьОбъект("СписокЗначений");
  СодержанияОпераций.ДобавитьЗначение("Распределение бонусов","Распределение бонусов");
  СодержанияОпераций.ДобавитьЗначение("Перенос текущих расчетов по з/п (авто)");
//погрызено для компактности
   
  ПоставщикДанных = СоздатьОбъект("ПоставщикДанных");
  ПоставщикДанных.БиблиотекаКартинок            = глБиблиотекаКартинокПоставщика;
  ПоставщикДанных.ТипЗначений                    = "Операции";
  ПоставщикДанных.КонтейнерТабличногоПоля        = "ТабличноеПолеОперации";
  ПоставщикДанных.КонтейнерКоманднойПанели    = "КоманднаяПанельОперации";
  ВидыСравнений = СоздатьОбъект("ВидыСравнения");
   
  ДанныеОперации = ПоставщикДанных.Данные;
  ДанныеОперации.РежимОтладки = 1;
   
  ДанныеОперации.СоздатьКнопкиПоУмолчанию();
   
  // Добавление колонок
  ДанныеОперации.НоваяКолонка("ДатаДокумента");
  ДанныеОперации.НоваяКолонка("ВремяДокумента");
  ДанныеОперации.НоваяКолонка("ВидДокумента");
  ДанныеОперации.НоваяКолонка("НомерДокумента");    
  ДанныеОперации.НоваяКолонка("СодержаниеОперации");
  ДанныеОперации.НоваяКолонка("СуммаОперации");
   
  ОтборДата = ДанныеОперации.Отбор.ДатаДокумента;
  ОтборДата.ИзменятьИспользование = 1;
  ОтборДата.Использование = 1;
  ОтборДата.ВидСравнения = ВидыСравнений.Интервал;
  ОтборДата.ЗначениеС = НачГода(РабочаяДата());
  ОтборДата.ЗначениеПо = КонГода(РабочаяДата());

  ОтборВидДокумента = ДанныеОперации.Отбор.ВидДокумента;
  ОтборВидДокумента.ИзменятьИспользование = 0;
  ОтборВидДокумента.Использование = 1;
  ОтборВидДокумента.ВидСравнения = ВидыСравнений.Равно;
  ОтборВидДокумента.Значение = Метаданные.Документ("Операция");
   
  ОтборСодержаниеОперации = ДанныеОперации.Отбор.СодержаниеОперации;
  ОтборСодержаниеОперации.ИзменятьИспользование = 0;
  ОтборСодержаниеОперации.Использование = 1;
  ОтборСодержаниеОперации.ВидСравнения = ВидыСравнений.ВСписке;
  ОтборСодержаниеОперации.Значение = СодержанияОпераций;
//---------------
[/code]
и подозрительно выглядит часть запроса:
      and oper.descr in ений','СписокЗначений','СписокЗначений','СписокЗначений','СписокЗначений')))))

1cpp 3.2.3.17
  
Наверх
ICQ  
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 56 57 [58] 59 60 ... 81
ОтправитьПечать