Заполнение контактной информации на форме

Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
1. mentozavr 68 29.03.13 10:18 Сейчас в теме
Товарисчи подскажите пожалуйста как можно програмно заполенить поля контактной информации на форме справочника физические лица
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. zulus100 29.03.13 10:51 Сейчас в теме
(1) mentozavr, УправлениеКонтактнойИнформацией.ЗаписатьКонтактнуюИнформацию(НаборЗаписей, Ссылка, Отказ)
natarezn; +1 Ответить
5. mentozavr 68 29.03.13 11:26 Сейчас в теме
(4) zulus100, спасибо а как ей пользоваться
6. FIERYLIONS 222 29.03.13 11:37 Сейчас в теме
(5) mentozavr, (5) вам полный пример нужен?
7. mentozavr 68 29.03.13 11:55 Сейчас в теме
(6) fierylions, Большое спасибо если поделитесь. А-то сам не разберусь. Честно впервые встречаюсь с такой задачей
8. zulus100 29.03.13 12:24 Сейчас в теме
(5) mentozavr, примерно так (конт. инф. находится в массиве мКИ):

нзКИ = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();

Для инд=0 По мКИ.Количество()-1 Цикл
	знзКИ = нзКИ.Добавить();
	знзКИ.Объект = СсылкаНаФизЛицо;
	знзКИ.Вид = ВидКИ; // (Справочник.ВидыКонтактнойИнформации)
	знзКИ.Тип = ТипКИ; // (Перечисления.ТипыКонтактнойИнформации)
	знзКИ.Представление = мКИ[инд];
КонецЦикла;
	
Отказ = Ложь;
УправлениеКонтактнойИнформацией.ЗаписатьКонтактнуюИнформацию(нзКИ,  СсылкаНаФизЛицо, Отказ);
Показать
11. mentozavr 68 29.03.13 13:00 Сейчас в теме
(8) zulus100, а если в таблице значений
12. zulus100 29.03.13 14:09 Сейчас в теме
(11) mentozavr, тоже самое) только наименование колонки прописать... тзКИ[инд].Колонка
13. mentozavr 68 29.03.13 15:13 Сейчас в теме
(12) zulus100, Спасибо конечно, но у меня задачка по хитрее. у меня 2 базы и контактная информация базы2 заполняется из значений базы 1. Данные я вытаскиваю а как их загнать в контактную инфу базы данных №2 ума не приложу. можт что-то похожее было
14. zulus100 29.03.13 15:38 Сейчас в теме
(13) mentozavr, данные из базы1 в каким образом извлекаются? в файлик сохраняются или через com работаете?
15. mentozavr 68 29.03.13 15:54 Сейчас в теме
(14) zulus100, в том-то и дело через ком. Просто никак не могу понять как организовать данные пытался вытянуть через
Ссылка=Справочники.ФизическиеЛица.НайтиПоКоду("000000001"); //Это ссылка  на объект той базы1
НаборКонтактнойИнформации=РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
УправлениеКонтактнойИнформацией.ПрочитатьКонтактнуюИнформацию(НаборКонтактнойИнформации, Ссылка);
Для Каждого текущаяЗапись Из НаборКонтактнойИнформации Цикл
    Сообщить(текущаяЗапись.Представление); //также и другие поля
КонецЦикла;


а дальше ступор??? может есть какие мысли? или другой вариант
16. zulus100 29.03.13 15:57 Сейчас в теме
(15) mentozavr, Физ. лица по коду синхронизируются? и в догонку - это разовая операция или будет проходить периодически?
17. mentozavr 68 29.03.13 16:04 Сейчас в теме
(16) zulus100, да по коду. операция запускается по кнопке можно сказать разовая включена в обработку исходила из задачи
"«Есть база1 (полная со всеми справочниками) и база2 (справочники практически пустые). В данный момент в справочники элементов номенклатуры, контрагентов и основных средств внесена кнопка обращения к базе1 и поиск в ней по контексту необходимой информации. После того как функция поиска отработала и мы получили необходимый результат, он переносится в поле наименование формыэлемента справочника и по кнопке «Записать» вытягивает с базы1 все данные по данному наименованию. Но существует проблема в том что она вытягивает только реквизиты которые есть на форме, а находящаяся в форме информация, получаемая из регистров сведений (накоплений) не подгружается. Вопрос: как можно сделать так чтобы вытягивалась информация и из регистров сведений?»"
18. zulus100 29.03.13 16:34 Сейчас в теме
(17) mentozavr, тогда так
ссФЛ = Справочники.ФизическиеЛица.что-тотам;
	зКИ = БазаИсточник.NewObject("Запрос");
	зКИ.УстановитьПараметр("Код", ссФЛ.Код);
	зКИ.Текст = 
	"ВЫБРАТЬ
	|	КонтактнаяИнформация.Объект.Код КАК КодФЛ,
	|	ПРЕДСТАВЛЕНИЕ(КонтактнаяИнформация.Тип) КАК ТипКИ,
	|	КонтактнаяИнформация.Вид.Наименование КАК ВидКИ,
	|	КонтактнаяИнформация.Представление КАК Представление
	|ИЗ
	|	РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
	|ГДЕ
	|	КонтактнаяИнформация.Объект ССЫЛКА Справочник.ФизическиеЛица
	|	И КонтактнаяИнформация.Объект.Код = &Код";
	звКИ = зКИ.Выполнить().Выбрать();
	
	нзКИ = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
	Пока звКИ.Следующий() Цикл
		знзКИ = нзКИ.Добавить();
		знзКИ.Объект = ссФЛ;
		знзКИ.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоНаименованию(звКИ.ВидКИ);
		знзКИ.Тип = Перечисления.ТипыКонтактнойИнформации[звКИ.ТипКИ];
		знзКИ.Представление = звКИ.Представление;
	КонецЦикла;	                                                

	Отказ = Ложь;
	УправлениеКонтактнойИнформацией.ЗаписатьКонтактнуюИнформацию(нзКИ, ссФЛ, Отказ);
Показать
19. mentozavr 68 29.03.13 18:07 Сейчас в теме
(18) zulus100, спасибо попробую разобраться
20. mentozavr 68 29.03.13 18:08 Сейчас в теме
(18) zulus100, а что-тотам енто что це таке
21. zulus100 29.03.13 22:34 Сейчас в теме
(20) mentozavr, это ссылка на элемент в база2 (для которого будет добавляться КИ из база1)
22. mentozavr 68 30.03.13 13:07 Сейчас в теме
(21) zulus100, Ссылка=Справочники.ФизическиеЛица.НайтиПоКоду("000000001"); //Это ссылка
на объект той базы1 так получается это оно и есть только ссылка заменить на ссФЛ. просто я 10 лет не программировал толком а с такими я имею виду ком-соединения воообще дела не имел. все через стандартные обработки ИТС
23. zulus100 30.03.13 16:07 Сейчас в теме
24. mentozavr 68 30.03.13 23:22 Сейчас в теме
(23) zulus100, выдает
{ОбщийМодуль.УправлениеКонтактнойИнформацией.Модуль(231)}: Ошибка при вызове метода контекста (Выполнить)
ТабЗн = Запрос.Выполнить().Выгрузить();
по причине:
{(23, 3)}: В запросе с предложениями РАЗЛИЧНЫЕ или ОБЪЕДИНИТЬ нельзя использовать поля неограниченной длины "Объект"
<<?>>&Объект КАК Объект,
25. mentozavr 68 30.03.13 23:47 Сейчас в теме
(23) zulus100, я все-таки подозреваю то что уменя же Ссылка-ком объект. а как по другому?
26. mentozavr 68 31.03.13 00:22 Сейчас в теме
(23) zulus100, Ссылка=Справочники.ФизическиеЛица.НайтиПоКоду("000000001"). а ссылка тут - ком-объект????? и ведь "это ссылка на элемент в база2 (для которого будет добавляться КИ из база1)" - этого элемента не существует пока. я его создаю только. а создаю я его своей процедурой т.е. по поиску я нахожу нужный объект в базе1. его наименование помещается в поле наименование на форме элемента в базе2 потом по кнопке сохранить запускается процедура и все реквизиты (без данных регистров сведния) вытаскиваются из базы1. а изначально когд аосуществляется поис элемента баз2 нет.
27. zulus100 01.04.13 10:11 Сейчас в теме
(26) mentozavr, Ссылка - это ссылка на объект в базе2
28. mentozavr 68 01.04.13 10:17 Сейчас в теме
(27) zulus100, Дык я понял. а как ее получить если элемент еще не записан. он на этапе создания.
29. zulus100 01.04.13 10:28 Сейчас в теме
(28) mentozavr, записать его. пока элемент не записан, КИ не добавить.
30. mentozavr 68 01.04.13 10:36 Сейчас в теме
(29) zulus100, я попробовал через получитьссылку что-то типа
 ссФЛ = Справочники.ФизическиеЛица.ПолучитьСсылку();

так можно как нибудь.
т.е пока элемент записан не будет не будет записан и регистр сведений КИ. а если ссылку получить из ком?
32. zulus100 01.04.13 10:50 Сейчас в теме
(30) mentozavr, в коме будет ссылка базы1
31. mentozavr 68 01.04.13 10:45 Сейчас в теме
(29) zulus100, или тогда другой вопрос. Впринципе можно как-то наверное програмно инициировать функцию записи элемента. Но потом как получит ссылку на ентот элемент?
33. zulus100 01.04.13 10:51 Сейчас в теме
(31) mentozavr,
Элемент = Справочники.ФизЛица.СоздатьЭлемент();
Элемент.Записать;
Ссылка = Элемент.Ссылка;
34. mentozavr 68 01.04.13 10:54 Сейчас в теме
(33) zulus100, получается с комом вообще бесполезно что-либо делать. а в этом коде ссылка - ссФЛ.
Посто я сделал обработку работала нет дай им чтобы после того как бухгалтера поискали в центральной баз быдернуть не только реквизиты но и все регистры сведений.
37. mentozavr 68 01.04.13 11:53 Сейчас в теме
(33) zulus100, попробовал пишет что такой элемент есть в справочнике
38. zulus100 01.04.13 12:18 Сейчас в теме
(37) mentozavr, ПриЗаписи() какая-то проверка срабатывает?
40. mentozavr 68 01.04.13 13:07 Сейчас в теме
(38) zulus100, да отрабатывается самописная процедура соединения с ЦБ и вытаскивания с нее реквизитов найденных по наименованию (наименование (строка) получается из формы)
50. zulus100 01.04.13 14:13 Сейчас в теме
(40) mentozavr, в базе2 перед записью идет проверка по наименованию, что бы не было дублей?
51. mentozavr 68 01.04.13 14:23 Сейчас в теме
(50) zulus100, ну да. там вообще отрабатывает проверку на наличие дублей, производится поиск в базе1 данных по наименованию и запись в базу2 элемена найденного в базе1 по наименованию. т.е. из процедуры поиска по контексту из базы1 в формуэлемента базы2 возвращается наименование. далее при нажатии на кнопку записать производится поиск в базе1 данных по наименованию и запись в базу2 элемена найденного в базе1 по наименованию.
52. mentozavr 68 01.04.13 14:42 Сейчас в теме
(50) zulus100, я что-то типа токого сделал
Записать();
Запрос214 = Новый Запрос;
Запрос214.Текст = "
|ВЫБРАТЬ
|Ссылка,
|Наименование
|ИЗ
|справочник.ФизическиеЛица
|ГДЕ
|справочник.ФизическиеЛица.Наименование=&НД";
Запрос214.УстановитьПараметр("НД",	Форма.НЗ);	 
РезультатЗапроса = Запрос214.Выполнить().Выгрузить();
Для Каждого ТекущаяСтрока из РезультатЗапроса цикл
ссФЛ = ТекущаяСтрока.Ссылка;
конеццикла;
 СистемнаяИнформация=Новый СистемнаяИнформация;
 ВерсияПлатфомы=Лев(СистемнаяИнформация.ВерсияПриложения,3);
 Если ВерсияПлатфомы="8.0" Тогда 
	 Коннектор=Новый COMОбъект("V8.COMConnector");
 ИначеЕсли ВерсияПлатфомы="8.1" Тогда 
	 Коннектор=Новый COMОбъект("V81.COMConnector");
 ИначеЕсли ВерсияПлатфомы="8.2" Тогда 
	 Коннектор=Новый COMОбъект("V82.COMConnector");
 Иначе 
	 Предупреждение("Вы используете марсианскую версию программы.");

 КонецЕсли;	
 Попытка
	 БазаДанных=Коннектор.Connect("File=""C:\.....""; Usr =""*******"";");	
	 //		БазаДанных=Коннектор.Connect("file='"+ПутьКОсновнойБазе+"'; usr='"+ИмяПользователяБазы+"'; pwd='"+ПарольПользователяБазы+"';");
 Исключение
	 Сообщить(ОписаниеОшибки());
	 
 КонецПопытки;

 зКИ = БазаДанных.NewObject("Запрос"); 
 зКИ.УстановитьПараметр("Код", форма.Код1); 
 зКИ.Текст = 
 "ВЫБРАТЬ 
 | КонтактнаяИнформация.Объект.Код КАК КодФЛ, 
 | ПРЕДСТАВЛЕНИЕ(КонтактнаяИнформация.Тип) КАК ТипКИ, 
 | КонтактнаяИнформация.Вид.Наименование КАК ВидКИ, 
 | КонтактнаяИнформация.Представление КАК Представление 
 |ИЗ 
 | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация 
 |ГДЕ 
 | КонтактнаяИнформация.Объект ССЫЛКА Справочник.ФизическиеЛица 
 | И КонтактнаяИнформация.Объект.Код = &Код"; 
 звКИ = зКИ.Выполнить().Выбрать(); 

 нзКИ = РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей(); 
 Пока звКИ.Следующий() Цикл 
 знзКИ = нзКИ.Добавить(); 
 знзКИ.Объект = ссФЛ; 
 знзКИ.Вид = Справочники.ВидыКонтактнойИнформации.НайтиПоНаименованию(звКИ.ВидКИ); 
 знзКИ.Тип = Перечисления.ТипыКонтактнойИнформации[звКИ.ТипКИ]; 
 знзКИ.Представление = звКИ.Представление; 
 КонецЦикла; 

 Отказ = Ложь; 
 УправлениеКонтактнойИнформацией.ЗаписатьКонтактнуюИнформацию(нзКИ, ссФЛ, Отказ);
Показать


данные в цикле вроде выгружаются но в базу не закрепляются (не попадают). т.е. если потом после этого я нажимаю "ОК" и открываю этот элемент то контактная информация (представление) пусто
53. zulus100 01.04.13 14:59 Сейчас в теме
(52) mentozavr, этот код откуда вызывается?
54. mentozavr 68 01.04.13 15:12 Сейчас в теме
(53) zulus100, этот из формыэлемента физлица
55. zulus100 01.04.13 15:40 Сейчас в теме
(54) mentozavr, тогда так

	Если ЭтоНовый() Тогда
		Записать();
	КонецЕсли;	
	
	СистемнаяИнформация=Новый СистемнаяИнформация;
	ВерсияПлатфомы=Лев(СистемнаяИнформация.ВерсияПриложения,3);
	Если ВерсияПлатфомы="8.0" Тогда
		Коннектор=Новый COMОбъект("V8.COMConnector");
	ИначеЕсли ВерсияПлатфомы="8.1" Тогда
		Коннектор=Новый COMОбъект("V81.COMConnector");
	ИначеЕсли ВерсияПлатфомы="8.2" Тогда
		Коннектор=Новый COMОбъект("V82.COMConnector");
	Иначе
		Предупреждение("Вы используете марсианскую версию программы.");
	КонецЕсли;
	
	Попытка
		БазаДанных=Коннектор.Connect("File=""C:\.....""; Usr =""*******"";");
		// БазаДанных=Коннектор.Connect("file='"+ПутьКОсновнойБазе+"'; usr='"+ИмяПользователяБазы+"'; pwd='"+ПарольПользователяБазы+"';");
	Исключение
		Сообщить(ОписаниеОшибки());
	КонецПопытки;
	
	зКИ = БазаДанных.NewObject("Запрос");
	зКИ.УстановитьПараметр("Код", форма.Код1);
	зКИ.Текст =
	"ВЫБРАТЬ
	| КонтактнаяИнформация.Объект.Код КАК КодФЛ,
	| ПРЕДСТАВЛЕНИЕ(КонтактнаяИнформация.Тип) КАК ТипКИ,
	| КонтактнаяИнформация.Вид.Наименование КАК ВидКИ,
	| КонтактнаяИнформация.Представление КАК Представление
	|ИЗ
	| РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
	|ГДЕ
	| КонтактнаяИнформация.Объект ССЫЛКА Справочник.ФизическиеЛица
	| И КонтактнаяИнформация.Объект.Код = &Код";
	звКИ = зКИ.Выполнить().Выбрать();

	Пока звКИ.Следующий() Цикл
		знзКИ = НаборКонтактнойИнформации.Добавить();
		знзКИ.Объект 		= Ссылка;
		знзКИ.Вид 			= Справочники.ВидыКонтактнойИнформации.НайтиПоНаименованию(звКИ.ВидКИ);
		знзКИ.Тип 			= Перечисления.ТипыКонтактнойИнформации[звКИ.ТипКИ];
		знзКИ.Представление = звКИ.Представление;
	КонецЦикла;
Показать
56. mentozavr 68 01.04.13 15:58 Сейчас в теме
(55) zulus100, тут еще интересней, тут же присваивается новая ссылка а как можно ей присвоить ссылку и УУИД из базы1
57. zulus100 01.04.13 16:07 Сейчас в теме
(56) mentozavr, УУИД можно хранить в отдельном реквизите, а ссылка базы1 актуальна только для базы1 (в базе2 она будет как COMОбъект)
58. mentozavr 68 01.04.13 18:14 Сейчас в теме
(57) zulus100, вот что и самое интересное что мои хотят получить объект в базу2 с сылкой из базы1, чтобы якобы было все одинаково. Это вообще как-то можно организовать?
и как можно вытащить УУИД из ком?
59. zulus100 01.04.13 19:20 Сейчас в теме
(58) mentozavr, ссылку на комобъект сохранить не получиться, она актуальна только на время соединения с базой... а ууид можно получить так: БазаИсточник.String(ОбъектИсточник.УникальныйИдентификатор())
60. mentozavr 68 01.04.13 19:42 Сейчас в теме
(59) zulus100, Спасибо за УИД. А так мне и говорят береш из базы1 ссылку и с этой ссылкой вставляешь в базу2. Говорят реально. как непойму. Кстати тип и объект тоже ком их получается тоже не переведешь нормальный вид?

А вообще можно с базы1 вытащить реквизиты в строковом виде, затем на форме открыть Обработки.РедактированиеКонтактнойИнформации.ПолучитьФорму("ФормаЗаписиАдреса") и реквизиты програмно туды вбить. Затем нажав на кнопку сохранить записать в регистр???

Кстати может скайп есть попроще бы было.
78. mentozavr 68 03.04.13 16:14 Сейчас в теме
(55) zulus100, просьба посмотреть что не так, не вытаскивает все данные о войнском учете
зВУ = БазаДанных.NewObject("Запрос"); 
 зВУ.УстановитьПараметр("КодФЛ2", форма.Код1); 
 зВУ.Текст =
 "ВЫБРАТЬ
 |    ВоинскийУчет.Период КАК Период,
 |    ВоинскийУчет.Физлицо.код  КАК КодФЛ1,
 |    ПРЕДСТАВЛЕНИЕ(ВоинскийУчет.ОтношениеКВоинскойОбязанности) КАК ОтношениеКВоинскойОбязанности,
 |    ПРЕДСТАВЛЕНИЕ(ВоинскийУчет.ОтношениеКВоинскомуУчету) КАК ОтКВУ,
 |    ПРЕДСТАВЛЕНИЕ(ВоинскийУчет.КатегорияЗапаса) КАК КатегорияЗапаса,
 |    ВоинскийУчет.Звание КАК Звание,
 |    ВоинскийУчет.Состав КАК Состав,
 |    ВоинскийУчет.Состав.Наименование КАК СоставН, 
 |    ВоинскийУчет.ВУС КАК ВУС,
 |    ПРЕДСТАВЛЕНИЕ(ВоинскийУчет.Годность) КАК Годность,
 |    ВоинскийУчет.Военкомат КАК Военкомат,
 |    ВоинскийУчет.Военкомат.Наименование КАК ВоенН,
 |    ВоинскийУчет.НаличиеМобпредписания КАК НаличиеМобпредписания,
 |    ВоинскийУчет.НомерКомандыПартии КАК НомерКомандыПартии,
 |    ПРЕДСТАВЛЕНИЕ(ВоинскийУчет.ЗабронированОрганизацией) КАК ЗабронированОрганизацией
 |ИЗ
 |    РегистрСведений.ВоинскийУчет КАК ВоинскийУчет
 |    ГДЕ
 |    ВоинскийУчет.Физлицо ССЫЛКА Справочник.ФизическиеЛица
 |    И ВоинскийУчет.Военкомат ССЫЛКА Справочник.Военкоматы
 |    И ВоинскийУчет.Звание ССЫЛКА Справочник.ЗваниеГражданскогоВоинскогоУчета
 |    И ВоинскийУчет.Состав ССЫЛКА Справочник.СоставыВоеннослужащих
 |    И ВоинскийУчет.Физлицо.код = &КодФЛ2"; 
 

  звВУ = зВУ.Выполнить().Выбрать(); 

  нзВУ = РегистрыСведений.ВоинскийУчет.СоздатьНаборЗаписей(); 
  Пока звВУ.Следующий() Цикл 
	  знзВУ = нзВУ.Добавить(); 
	  знзВУ.ФизЛицо = ссФЛ; 
	  Сообщить(знзВУ.ФизЛицо);
	  знзВУ.Военкомат = Справочники.Военкоматы.НайтиПоНаименованию(звВУ.ВоенН);
	  Сообщить(знзВУ.Военкомат);
	  знзВУ.ОтношениеКВоинскойОбязанности = Перечисления.ОтношениеКВоинскойОбязанности[звВУ.ОтношениеКВоинскойОбязанности];
	  Сообщить(знзВУ.ОтношениеКВоинскойОбязанности);
	  //знзВУ.ОтношениеКВоинскомуУчету = Перечисления.ОтношениеКВоинскомуУчету[звВУ.ОтКВУ];
	  //Сообщить(знзВУ.ОтношениеКВоинскомуУчету);
	  знзВУ.КатегорияЗапаса = Перечисления.КатегорииЗапасаВоеннообязанных[звВУ.КатегорияЗапаса];
	  Сообщить(знзВУ.КатегорияЗапаса);
	  знзВУ.Звание = звВУ.Звание;
	  Сообщить(знзВУ.Звание);
	  знзВУ.Состав = Справочники.СоставыВоеннослужащих.НайтиПоНаименованию(звВУ.НайтиПоНаименованию(звВУ.СоставН));
	  Сообщить(знзВУ.Состав);
	  знзВУ.Период = звВУ.Период;
	  Сообщить(знзВУ.Период);
	  знзВУ.ВУС = звВУ.ВУС;
	  Сообщить(знзВУ.ВУС);
	  знзВУ.Годность = Перечисления.ГодностьКВоеннойСлужбе[звВУ.Годность];
	  Сообщить(знзВУ.Годность);
	  знзВУ.НомерКомандыПартии = звВУ.НомерКомандыПартии;
	  Сообщить(знзВУ.НомерКомандыПартии);
	  знзВУ.ЗабронированОрганизацией = звВУ.ЗабронированОрганизацией;
	  Сообщить(знзВУ.ЗабронированОрганизацией);

КонецЦикла; 
 нзВУ.Записать();
Показать

Заранее спасибо!
79. zulus100 03.04.13 17:01 Сейчас в теме
(78) mentozavr, вот эти строки непонятно зачем
| ВоинскийУчет.Физлицо ССЫЛКА Справочник.ФизическиеЛица
| И ВоинскийУчет.Военкомат ССЫЛКА Справочник.Военкоматы
| И ВоинскийУчет.Звание ССЫЛКА Справочник.ЗваниеГражданскогоВоинскогоУчета
| И ВоинскийУчет.Состав ССЫЛКА Справочник.СоставыВоеннослужащих 

а так должно работать...
80. zulus100 03.04.13 17:04 Сейчас в теме
(78) mentozavr, только отбор по ФизЛицу в НабореЗаписей сделайте...
81. mentozavr 68 03.04.13 17:36 Сейчас в теме
(80) zulus100, физлицо (его код) передается как параметр. не вытаскиваютя отношение к воинучету категории запаса. А те строки в (79) получается удалить надо?
83. zulus100 03.04.13 19:03 Сейчас в теме
82. mentozavr 68 03.04.13 17:37 Сейчас в теме
(80) zulus100, "только отбор по ФизЛицу в НабореЗаписей сделайте" немного недопонял как
84. zulus100 03.04.13 19:06 Сейчас в теме
(82) mentozavr,
нзВУ.Отбор.Объект.Значение     = ссФЛ;
нзВУ.Отбор.Объект.Использование = Истина;
85. mentozavr 68 03.04.13 19:16 Сейчас в теме
(84) zulus100, спасибо. это в цикл воткнуть?
86. zulus100 03.04.13 19:59 Сейчас в теме
(84) zulus100, нет

нзВУ = РегистрыСведений.ВоинскийУчет.СоздатьНаборЗаписей();  
нзВУ.Отбор.ФизЛицо.Значение     = ссФЛ;
нзВУ.Отбор.ФизЛицо.Использование = Истина;
Пока звВУ.Следующий() Цикл 
....
КонецЦикла;
87. mentozavr 68 03.04.13 20:01 Сейчас в теме
(86) zulus100, спасибо понял. а то что вцикле остается как у меня
88. zulus100 03.04.13 20:07 Сейчас в теме
89. mentozavr 68 04.04.13 11:15 Сейчас в теме
(88) zulus100, Добрый день. Вопрос по подтягиванию данных с регистра. Если совпадает наименование и назавание группы то процедура вываливается в ошибку:
"Нельзя использовать в качестве объекта контактной информации - группу.
Элемент "ВЗП Булгар" не записан. Не записана контактная информация.
Ошибка при вызове метода контекста (Записать): Не удалось записать: "Контактная информация"!"
как это исключить?
90. zulus100 04.04.13 12:07 Сейчас в теме
(89) mentozavr, поставьте условие что бы элемент не был группой... вы как элементы выбираете?
91. mentozavr 68 04.04.13 13:16 Сейчас в теме
(90) zulus100,
Запрос=глСоединениеСЦБ.NewObject("Запрос");
	Запрос.Текст="
		|ВЫБРАТЬ
		|	ЭтоГруппа,
		|	Код,
		|	Наименование,
		|	ВЫРАЗИТЬ(НаименованиеПолное КАК СТРОКА(200)) КАК НаименованиеПолное
		|ИЗ 
		|	Справочник."+ИмяСправочника+" 
		|ГДЕ 
		|	НЕ ЭтоГруппа
		|ИТОГИ ПО
		|	Ссылка ТОЛЬКО ИЕРАРХИЯ
		|";
	Выборка=Запрос.Выполнить().Выбрать();
	Пока Выборка.Следующий() Цикл
		
	текЗапрос.Текст = "
		|ВЫБРАТЬ 
		|	ЭтоГруппа,
		|	Код,
		|	Наименование,
		|	НаименованиеПолное
		|ПОМЕСТИТЬ ТаблицаНоменклатурыОсновнойБазы 
		|ИЗ 
		|	&ТаблицаНоменклатурыОсновнойБазы КАК ТаблицаНоменклатурыОсновнойБазы
		|ГДЕ 
		|	НЕ ЭтоГруппа 
		|;
		|ВЫБРАТЬ ПЕРВЫЕ 50
		|	Код,
		|	Наименование,
		|	НаименованиеПолное
		|ИЗ
		|	ТаблицаНоменклатурыОсновнойБазы
		|ГДЕ 
		|	" + ТекстФрагментов + "";
	текЗапрос.УстановитьПараметр("ТаблицаНоменклатурыОсновнойБазы", ТаблицаНоменклатурыОсновнойБазы);     
	Возврат текЗапрос.Выполнить().Выгрузить();
Показать
92. mentozavr 68 04.04.13 13:18 Сейчас в теме
(90) zulus100, а это запрос на регистр
КИ.УстановитьПараметр("Код", форма.Код1); 
 зКИ.Текст = 
 "ВЫБРАТЬ 
 | КонтактнаяИнформация.Объект.Код КАК КодФЛ, 
 | ПРЕДСТАВЛЕНИЕ(КонтактнаяИнформация.Тип) КАК ТипКИ, 
 | КонтактнаяИнформация.Вид.Наименование КАК ВидКИ, 
 | КонтактнаяИнформация.Представление КАК Представление,
 | КонтактнаяИнформация.Поле1 КАК Поле1,
 | КонтактнаяИнформация.Поле2 КАК Поле2, 
 | КонтактнаяИнформация.Поле3 КАК Поле3, 
 | КонтактнаяИнформация.Поле4 КАК Поле4, 
 | КонтактнаяИнформация.Поле5 КАК Поле5, 
 | КонтактнаяИнформация.Поле6 КАК Поле6, 
 | КонтактнаяИнформация.Поле7 КАК Поле7,
 | КонтактнаяИнформация.Поле8 КАК Поле8, 
 | КонтактнаяИнформация.Поле9 КАК Поле9
 |ИЗ 
 | РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация 
 |ГДЕ 
 | КонтактнаяИнформация.Объект ССЫЛКА Справочник.Контрагенты 
 | И КонтактнаяИнформация.Объект.Код = &Код"; 
 звКИ = зКИ.Выполнить().Выбрать();
Показать
93. mentozavr 68 05.04.13 11:08 Сейчас в теме
(90) zulus100, тот вопос вроде решился.
П принципу и подобию сделал запрос на паспортные данные ФЛ. все данные подтягиваются хорошо но вид докумена (паспорт рф и т.д) не хочет
98. natarezn 14.10.16 15:05 Сейчас в теме
(4) zulus100, вы умничка ! нашла там СформироватьПредставлениеАдреса
2. Martinian 10 29.03.13 10:21 Сейчас в теме
Конфигурация какая? Релиз?
3. mentozavr 68 29.03.13 10:28 Сейчас в теме
(2) Martinian, Управление производственным предприятием, редакция 1.3 (1.3.37.1)
97. natarezn 14.10.16 15:03 Сейчас в теме
(2) Martinian, это грамотный вопрос !
9. margo_m09 29.03.13 12:34 Сейчас в теме
а как написать код, чтобы была проверка заполнения контактной информации? вот в справочники физ лица, чтобы выдалось сообщение, что нельзя провести, если не заполнены адреса?
10. mentozavr 68 29.03.13 12:59 Сейчас в теме
(9) margo_m09,
что-то типа наверное
Если ПустаяСтрока(ЭтаФорма.ПолеВводаИмяФайлаНоменклатуры) Тогда
Предупреждение("Не заполнено поле 'Имя файла Источника данных:'");
Возврат;
КонецЕсли;
35. margo_m09 01.04.13 11:49 Сейчас в теме
(10) mentozavr, Если ПустаяСтрока(ЭтаФорма.ПолеВводаИмяФайлаНоменклатуры) Тогда
Предупреждение("Не заполнено поле 'Имя файла Источника данных:'");
Возврат;
КонецЕсли; это добавить Процедура ПриИзмененииДанных()?
36. margo_m09 01.04.13 11:50 Сейчас в теме
можно мне тоже если не сложно кусок кода) а-то что не получается ничего(((
39. margo_m09 01.04.13 12:33 Сейчас в теме
у меня по поводу данной строчки Пустая Строка(ЭтаФорма.ПолеВводаИмяФайлаНоменклатуры) есть масса сомнений
41. mentozavr 68 01.04.13 13:07 Сейчас в теме
(39) margo_m09, почему если поле пустое то он далее двигаться не дает
42. margo_m09 01.04.13 13:12 Сейчас в теме
я наверное не корректно выразилась, это я понимаю, что написать вместо (ЭтаФорма.ПолеВводаИмяФайлаНоменклатуры)?? ошибки выдает
43. mentozavr 68 01.04.13 13:20 Сейчас в теме
44. margo_m09 01.04.13 13:56 Сейчас в теме
переменная не определенна
45. margo_m09 01.04.13 13:56 Сейчас в теме
(ЭтаФорма.ПолеВводаИмяФайлаНоменклатуры) не исключаю, что я не правильно изменяю эту строчку по контактную информацию
46. mentozavr 68 01.04.13 13:58 Сейчас в теме
(45) margo_m09, какая у Вас задача стоит. надо делать условие по полю которое есть н аформе
49. margo_m09 01.04.13 14:12 Сейчас в теме
(46) mentozavr, я понимаю что нужно сделать проверку заполнения полей адрес проживания, адрес для информирования, адрес по прописке, не могу это реализовать программно
61. mentozavr 68 01.04.13 19:44 Сейчас в теме
(49) margo_m09,
ФормаВводаАдреса                    = Обработки.РедактированиеКонтактнойИнформации.ПолучитьФорму("ФормаЗаписиАдреса"); // форма куды вбивается адрес
    ФормаВводаАдреса.Объект             = Справочники.ФизическиеЛица.НайтиПоНаименованию(имя); //поле объекта
    ФормаВводаАдреса.Вид // поле вида
	ФормаВводаАдреса.Представление      //поле представления 

и т.д. по ним и надо проводить проверку на 0
47. margo_m09 01.04.13 14:02 Сейчас в теме
мне нужно, чтобы когда было не заполнено значение контактная информация выдавалась ошибка, да видимо по полю
48. margo_m09 01.04.13 14:05 Сейчас в теме
проверка адреса проживания, адреса информирования и адреса по прописке
62. margo_m09 01.04.13 20:18 Сейчас в теме
63. mentozavr 68 01.04.13 20:24 Сейчас в теме
(62) margo_m09, по этим реквизитам надо проверять на наличие пустых строк. либо в свойствах формы выставить обязательную проверку заполнения нужных полей
66. margo_m09 02.04.13 06:17 Сейчас в теме
(63) mentozavr, выставить обязательную проверку заполнения нужных полей для адреса не получиться, так можно сделать для ПФР ИНН ИФНС, но не для адреса
67. margo_m09 02.04.13 07:23 Сейчас в теме
(63) mentozavr, Там есть переменная Отказ. Пишешь при определенных условиях отказ = Истина и объект не сохраняется


Контактная информация кстати храниться не в справочнике, а в регистре сведений (хоть и заполняется в форме справочника) поэтому ее сначала нужно выдернуть запросом либо через менеджерзаписей регистра сведений, а только потом проверять


Если запросом будешь выдергивать, то потом проверяешь условие типа этого.
Если не ВыборкаПоКонтакнойИнформации.Следующий() тогда
 	 
 	 	
Отказ = истина;



Если Менеджером записей, то проверяешь количество записей в выборке
68. mentozavr 68 02.04.13 08:25 Сейчас в теме
(67) margo_m09,ну то что не в справочнике я знаю. но заполняется все равно он из формы записи адреса
96. natarezn 14.10.16 15:02 Сейчас в теме
(67) margo_m09, у меня хранится в справочнике
64. kansler 01.04.13 21:40 Сейчас в теме
Ссылку можно установить для нового элемента. Т.е. в базе1 Получаем уникальный идентификатор объекта строкой
УУИД = СокрЛП(ОбъектИсточник.УникальныйИдентификатор()

А во второй базе Пишем следующее:
НовыйОбъект.УстановитьСсылкуНового(Справочники.ФизическиеЛица.ПолучитьСсылку(Новый УникальныйИдентификатор(УУИД)))

Должно получиться.
65. mentozavr 68 01.04.13 22:02 Сейчас в теме
(64) kansler, Спасибо я об этом думал но не знал как сделать получается УУИД надо сделать экспортной переменной и передать его
69. mentozavr 68 02.04.13 08:51 Сейчас в теме
(64) kansler, выводит
{Справочник.ФизическиеЛица.Форма.ФормаЭлемента.Форма(683)}: Ошибка при вызове конструктора (УникальныйИдентификатор)
ССФЛ=ЭтотОбъект.УстановитьСсылкуНового(Справочники.ФизическиеЛица.ПолучитьСсылку(Новый УникальныйИдентификатор(Форма.УУИД)));
по причине:
Недопустимое значение параметра (параметр номер '1')
70. zulus100 02.04.13 09:32 Сейчас в теме
(69) mentozavr, должно работать... попробуйте так:
ЭтотОбъект.УстановитьСсылкуНового(Справочники.ФизическиеЛица.ПолучитьСсылку(Новый УникальныйИдентификатор(БазаИсточник.String(ОбъектИсточник.УникальныйИдентификатор()))))
71. mentozavr 68 02.04.13 10:21 Сейчас в теме
(70) zulus100, (64) kansler, господа спасибо большое заработало. но опять но. В регистр я записываю но как теперь эти данные подтягивались на форму элемента физического лица. Счас так: вынимаю данные пишу в регистр и при нажатии на кнопку "ок" на форме регистр обнуляется.
72. mentozavr 68 02.04.13 15:48 Сейчас в теме
(70) zulus100, Вопрос. Вот я записал в регистр данные, как мне после этого высветить их на форме?
73. zulus100 02.04.13 16:20 Сейчас в теме
(72) mentozavr, если данные в регистре правильные - должна КИ отображаться в форме... измерение Объект правильно заполнено?
74. mentozavr 68 02.04.13 16:47 Сейчас в теме
(73) zulus100, вроде да. просто если после сохранения регистра открытую форму элемента закрыть и потом открыть то все нормально
75. zulus100 02.04.13 16:58 Сейчас в теме
(74) mentozavr, пропишите после записи в регистр УправлениеКонтактнойИнформацией.ПрочитатьКонтактнуюИнформацию(НаборКонтактнойИнформации, Ссылка)
76. mentozavr 68 02.04.13 17:41 Сейчас в теме
(75) zulus100, попробую но помоему я так делал чего-то не отображается на открытой форме
77. mentozavr 68 02.04.13 18:39 Сейчас в теме
(75) zulus100, пролсто когда контактная информация записывается у меня форма элемента справочника открыта и в ней на показать данные из регистра.
94. V_K 05.04.13 14:31 Сейчас в теме
Там нужно посмотреть - это набор записей, посмотрите название набора и можно к нему обращаться.
95. natarezn 14.10.16 15:01 Сейчас в теме
не работает (работает нетак):

Об=Рез.ПолучитьОбъект();
        Телеф=Об.КонтактнаяИнформация.Добавить();
        Телеф.Тип=Перечисления.ТипыКонтактнойИнформации.Телефон;
        Телеф.Вид=Справочники.ВидыКонтактнойИнформации.ТелефонКонтрагента;
        Телеф.Представление=Строка(Телефоны);
		//Об.Записать(); 	
		Об=Рез.ПолучитьОбъект();
        Адрес=Об.КонтактнаяИнформация.Добавить();
        Адрес.Тип=Перечисления.ТипыКонтактнойИнформации.Адрес;
        Адрес.Вид=Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента; 
        Адрес.Представление=Строка(ЮрАдрес);
        //Об.Записать();
		Об=Рез.ПолучитьОбъект();
        Адрес=Об.КонтактнаяИнформация.Добавить();
        Адрес.Тип=Перечисления.ТипыКонтактнойИнформации.Адрес;
        Адрес.Вид=Справочники.ВидыКонтактнойИнформации.ФактАдресКонтрагента; 
        Адрес.Представление=Строка(ФактАдрес);
        Об.Записать();
Показать
99. natarezn 14.10.16 15:06 Сейчас в теме
а в бп никто не закидывал адреса ?
100. natarezn 14.10.16 15:07 Сейчас в теме
У меня Справочники.Контрагенты.КонтактнаяИнформация.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот