Контрагент
скрытие
Технические вопросы
7.x

Доброго времени суток!
Нужна информация о том способна ли BPM на сие деяние.
Итак возьмем раздел Контрагенты.

В нем мы создали деталь - "Команда контрагента".
В этой детали находятся пользователи которые относятся к данному контрагенту.

Итак вопрос, каким образом можно ограничить количество полей/сущностей на карточке по условию, что пользователь не находится в команде контрагента?
Необходимо чтобы в карточке отображалось максимум 3-4 поля и 1 вкладка - Основная информация и самое главное, необходимо чтобы как только грузится карточка не было никаких задержек.

У кого какие есть представления по поводу данной проблемы, коллеги?

На данный момент скрытие происходит при вызове моей функции, и видимость основных перводоступных полей зависит от аттрибута.

        hideAccountCard: function(_item) {
                if (_item !== 1) {
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=1]").setStyle("display", "none");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=2]").setStyle("display", "none");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=3]").setStyle("display", "none");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=4]").setStyle("display", "none");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=5]").setStyle("display", "none");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=6]").setStyle("display", "none");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=6]").setStyle("display", "none");
                        this.showInformationDialog("Вы не входите в команду контрагента!");
                } else {
                        his.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=1]").setStyle("display", "");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=2]").setStyle("display", "");
                        his.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=3]").setStyle("display", "");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=4]").setStyle("display", "");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=5]").setStyle("display", "");
                        this.Ext.select("#AccountPageV2TabsTabPanel-tabpanel-items li[data-item-index=6]").setStyle("display", "");
                                }
                        },

Нравится

11 комментариев

а чем вам фильтрация записей в детали-то не угодила? esq долго выполняется?

Просто от момента открытия карточки до времени скрытия 2-3 секунды.
Такой фриз клиента не устраивает.
Вот я и ищу другие выходы из ситуации.

Хммм... это вообще ненормально. У меня у одного клиента такое настроено, так изменение мнговенное почти. Фриз более полсекунды явно свидетельствует о наличии проблем технического свойства. Онсайт?

"Дмитрий Степанов" написал: У меня у одного клиента такое настроено, так изменение мнговенное почти

А может, вы настраивали еще, чтобы эти пользователи не могли эти поля вытащить в колонки реестра?

"Владимир Соколов" написал:
Дмитрий Степанов пишет:

У меня у одного клиента такое настроено, так изменение мнговенное почти

А может, вы настраивали еще, чтобы эти пользователи не могли эти поля вытащить в колонки реестра?


Нет, такой настройки пока не было, просто в методе где происходит скрытие не мало логики накручено. И то что через Ext скрывается буквально моментально, а вот по атрибутам страдает.

"Владимир Соколов" написал:
Дмитрий Степанов пишет:

У меня у одного клиента такое настроено, так изменение мнговенное почти

А может, вы настраивали еще, чтобы эти пользователи не могли эти поля вытащить в колонки реестра?

я отключал сам пункт меню с этой возможностью :)

"Дмитрий Степанов" написал:я отключал сам пункт меню с этой возможностью :)

Я с точки зрения безопасности данных. Всё равно у пользователей останется возможность отфильтровать по этим полям список...

"Владимир Соколов" написал:

Я с точки зрения безопасности данных. Всё равно у пользователей останется возможность отфильтровать по этим полям список...

Если изменить режим использования поля на уровне объекта на "Никогда", то после очистки кеша по полю нельзя будет отфильтровать и отобразить его в реестре раздела.

"Демьяник Алексей" написал:Если изменить режим использования поля на уровне объекта на "Никогда", то после очистки кеша по полю нельзя будет отфильтровать и отобразить его в реестре раздела.

Вопрос в комбинации доступа к записи и полям. То есть, если пользователь является ответственным по контрагенту, то он видит все поля. В противном случае - только название и код...
Так что, на уровне объекта это не решить

Касательно оригинального топика, если вы о задержке между отображением карточки со всеми полями, и моментом когда те которые необходимо скрыть, будут скрыты. То стоит пойти обратным путем, и изначально, в схеме страницы видимость полей прикрепить к атрибутам которые изначально false, а уже выполнив всю необходимую логику и проверки, делать поля видимыми, для тех, для кого они должны быть видимыми.
Но, возможно я не доконца понял сокрытие чего вас интересует. Полей на карточке, закладок на карточке, деталей на карточке, или строк в детали.

Максим Шевченко, кстати дельный совет.
Кажется это решит проблему, спасибо)

Показать все комментарии
выбор из справочника
выбор из справочного поля
Контрагент
реквизиты
Технические вопросы
7.x

Добрый день.

В карточке договора расположено поле "Реквизиты контрагента". При клике на поле появляется список, который отображает значения, которые указаны в определенном поле в платежном реквизите контрагента. Мне нужно отображать значение другого поля, указанного в платежном реквизите. Подскажите, как это сделать? Может кто-то сталкивался и реализовывал подобное.

Нравится

3 комментария

Добрый день Елена!!!

подскажите пожалуйста для примера, какие поля из схемы таблица Платежные реквизиты контрагента вы хотите отображать на экране при нажатие выбора Платежных реквизитов в договоре. Я вам приведу пример кода.

"Власов Михаил Викторович" написал:

Добрый день Елена!!!

подскажите пожалуйста для примера, какие поля из схемы таблица Платежные реквизиты контрагента вы хотите отображать на экране при нажатие выбора Платежных реквизитов в договоре. Я вам приведу пример кода.


Михаил, у меня в платежных реквизитах создано поле "Юр.лицо" (тестовое поле). Мне вот нужно, чтобы при нажатии на "Реквизиты контрагента" в договоре, отображался список именно того, что занесено в данное поле (юр.лицо).

Добрый день.

Вам необходимо изменить значение свойства "Отображаемое значение" на уровне объекта справочника.

Показать все комментарии

Подскажите пожалуйста как сделать задание!

Добавить на страницу создания/изменения/просмотра контрагента поля на закладку «Основная информаци»: «Кол-во продаж» (целое число), «Средний чек» (дробное 4 знака после запятой), «Дата последней продажи» (дата без времени), «Потенциал» (список, выбор из справочника «Приоритет активности»)

Я добавляю "Замещающий пакет", указываю родительский объект "Контрагент", затем добавляю в Columns : Кол-во продаж» (целое число), «Средний чек» (дробное 4 знака после запятой), «Дата последней продажи» (дата без времени), «Потенциал» (список, выбор из справочника «Приоритет активности»)
Затем кликаю сохранить и опубликовать!
Как теперь сделать так, чтобы измененное состояния показывалось на сайте?

Нравится

2 комментария

Алексей, здравствуйте!

Вам необходимо отобразить добавленные поля на странице редактирования с помощью мастера разделов.

Обучающий видеоролик - https://www.youtube.com/watch?v=DLFjsAR2CbI
Статья на Академии - https://academy.terrasoft.ru/documents/sales-enterprise/7-9/master-razd…

Вильшанский Дмитрий,

А как указать 4 знака после запятой и убрать время в дате?

Показать все комментарии
Контрагент
основы
создать поле
Технические вопросы
7.x

Нужно добавить любое поле, к примеру, "Дата". Делаю по документации не получается:
-Создаю замещающий объект в пакете customer;
-Выбираю Контрагента как родительский объект;
-Публикую;
-Создаю замещающий клиентский объект;
А в родительском объекте не знаю что выбрать

Нравится

1 комментарий

Сделайте новое поле мастером раздела и потом можно изучить созданные автоматически замещающий объект и модуль :smile:

"Алексей Сахоров" написал:-Создаю замещающий клиентский объект;
А в родительском объекте не знаю что выбрать

по контексту - замещающий клиентский модуль все же...
Родителем указываете то, что хотели заместить, если карточка раздела Контрагента то AccountPageV2 (Страница редактирования контрагента)

Показать все комментарии
email
карточка контакта
Контрагент
Технические вопросы
7.x

Здравствуйте.

В карточке контакта есть поле "Email"
В карточке контрагента есть поле "Домен e-mail"

Нужно реализовать следующую задачу: если при создании контакта в карточке не был указан контрагент, то он определился по Домену e-mail.

Например:
В системе создан контрагент "Компания", у которого "Домен e-mail" указан "gmail.com"
Cоздали контакт "Иванов Иван", у которого указали почту "123@gmail.com" и не указали контрагента. После добавления записи, контрагент должен подставиться автоматически, то есть "Компания"

Создан БП, который должен запускаться при создании контакта и если в карточке контакта не указан контрагент. В качестве начального события используется Сигнал (если добавлен контакт), далее элемент Чтение контакта (считываем данные добавленного контакта). Далее нам нужно найти контрагента, чей домен содержится в e-mail клиента.

Как это реализовать? Ведь я от контакта получаю почту "123@gmail.com", а в домене контрагента указан gmail.com

Нравится

3 комментария

"Гольфельд Елена Андреевна" написал:В карточке контрагента есть поле "Домен e-mail"

Добрый день Елена!!!

поле "Домен email" это постоянное поле? или данное поле создано в средствах связи контрагента. поясните данный момент.

"Гольфельд Елена Андреевна" написал:Как это реализовать? Ведь я от контакта получаю почту "123@gmail.com", а в домене контрагента указан gmail.com

а в этом вам поможет следующая документация с сайта Майкрасофт. String.Split

т.е вам Елена после получения емайл его нужно распарсить (разделить на части) и полученный домен сравнить с доменом контрагента. вот решение вашего вопроса.

Здравствуйте!

Вам необходимо реализовать логику, согласно которой при сохранении записи, если поле "Email" заполнено, а поле "Контрагент" не заполнено, система будет преобразовывать значение в поле "Email" в домен. Для этого Вы можете использовать регулярное выражение.
Далее, используя ESQ Вы можете найти контрагента, у которого значение в поле "Домен" совпадает с рассчитанным значением.

В системе такая логика реализована при загрузке писем в систему - на деталь "Участники активности" добавляются контакты, у которых на детали средство связи есть записи, которые совпадают со значениями в поле "От кого", "Кому", "Копия". Поскольку в email приходят значения вида test@test.test<'Test email user'>, то данное выражение по регулярному выражению преобразовывается в email вида test@test.test. И уже после преобразования значения сравниваются.

Показать все комментарии
добавление
контакт
Контрагент
редактирование
Технические вопросы
7.x

Здравствуйте! Подскажите, пожалуйста, как добавить JS событие при сохранении контрагента/контакта?
Вот кусок кода на странцие:

methods: {
fir: function()
{
if (this.get("UsrKey").checked)
{
this.set("UsrLoyaltyOfContact", "Лояльно");
}
else
{
this.set("UsrLoyaltyOfContact", "Не определено");
}
}

}

UsrKey - Boolen Checkbox, UsrLoyaltyOfContact - Справочник.

Не могу разобраться, куда подвесить событие?

Нравится

2 комментария

Здравствуйте!

Что-то похожее ранее обсуждалось здесь.

Вам необходимо переопределить метод onSaved в секции methods схемы страницы редактирования

                        // Переопределение базового метода Terrasoft.BasePageV2.OnSaved.
			// Выполняет постобработку сохранения записи
			onSaved: function(response, config) {
				// Вызов родительской реализации.
				this.callParent(arguments);
                                //Вызов Вашего метода
                                fir();
			}
Показать все комментарии

Подскажите, пожалуйста, есть ли в bpm'online возможность импорта контрагентов не только единовременно из Excel, но и через регулярную загрузку из стороннего источника?

Например, у нашей компании развернута на web учетная система. По обращению к определенному URL я могу отдавать xml (json или файл любого другого формата - хоть тот же Excel) содержащий полный список контрагентов компании на данный момент (или только список контрагентов, зарегистрированных в системе с момента последнего обращения). Вопрос - может ли bpm'online регулярно обращаться по указанному URL к данному файлу с выгрузкой и записывать данные из него в справочник контрагентов?

И если может - то какие настройки необходимо сделать в системе для реализации подобного рода импорта данных?

Нравится

2 комментария

Здравствуйте, Константин!

Вы можете реализовать вызов вебсервиса и парсинг полученного ответа в bpm'online, используя элемент "Задание-сценарий" в бизнес процессе. Более подробно об интеграциях читайте по этой ссылке.
Процесс, средствами QUARTZ Вы можете запускать периодически, используя метод ScheduleMinutelyProcessJob.

Здравствуйте, Константин!

Вы можете реализовать вызов вебсервиса и парсинг полученного ответа в bpm'online, используя элемент "Задание-сценарий" в бизнес процессе. Более подробно об интеграциях читайте по этой ссылке.
Процесс, средствами QUARTZ Вы можете запускать периодически, используя метод ScheduleMinutelyProcessJob.

Показать все комментарии
Контрагент
ответственный
Технические вопросы
7.x

Добрый день!
Возникла такая необходимость: реализовать возможность добавления второго ответственного контрагенту. Никто не сталкивался с таким?
Sales 7.5

Нравится

5 комментариев

Александр, здравствуйте!
Данное поле является системным. Потому, к сожалению, его дублирование или удаление не представляется возможным.

Как обходное решение Вы можете использовать администрирование по записям, и на каждую запись настроить делегирование прав.

Спасибо!

Судя по всему, необходимо добавить деталь "Ответственные" (а вдруг потом будет 3 ответственных). И реализовать раздачу прав доступа в бизнес-процессе.
Но это будет совсем нестандартное решение

"Арменчу Артём Александрович" написал:

Александр, здравствуйте!

Данное поле является системным. Потому, к сожалению, его дублирование или удаление не представляется возможным.

Как обходное решение Вы можете использовать администрирование по записям, и на каждую запись настроить делегирование прав.

Спасибо!

С уважением, Арменчу Артём.


Добрый день!
К сожалению, задача не только в том, чтобы дать доступ к карточке контрагента кому-то еще. Поэтому только прав недостаточно.

Александр, здравствуйте!

Это было обходное решение.
Как я уже писал ранее, к сожалению, дублирование и удаление данного поля не представляется возможным.

Спасибо!

А в чем собственно сложность то? Сделайте новое поле, назовите Owner2 повесьте на список доступных значений фильтр типа Контакт.Контрагент = Наша компания, заполнение по умолчанию через объект. Доступ на основе поля как предлагал Владимир реализовать в БП...

Показать все комментарии
7.5
контакт
Контрагент
очередь
7.x

Добрый день,
в документации об очередях сказано:

"В параметрах очереди нужно выбрать объект, на основании которого она будет формироваться.
Например, для настройки параметров обработки обращений, в поле [Тип очереди] необходимо
выбрать “Обращение”, а для обработки неподтвержденных контактов — “Контакт”. В поле
[Процесс] указывается бизнес-процесс, который запускается в момент, когда оператор берет в
работу тот или иной элемент очереди."

Приведите пожалуйста наглядные примеры того, как могут быть использованы очереди Контактов и Контрагентов.

Нравится

4 комментария

Добрый день, Маргарита!

Очереди Контактов Вы можете использовать в случае, когда Вы хотите провести опрос удовлетворенности среди клиентов, которые воспользовались Вашими услугами в текущем месяце.

Очереди Контрагентов могут использоваться в случаях, когда Вы приглашаете партнеров или клиентов на мероприятие.

а какие Процессы подключаются к таким очередям?

они есть в базовом пакете, или их нужно создавать самостоятельно?

Маргарита, Все зависит от Ваших целей.

В коробочной версии продукта bpm'online ITIL transitions предусмотрен процесс обработки обращений из очереди.

Вы можете самостоятельно настроить процесс для приглашения участников мероприятия. К примеру, такой процесс может включать вопрос пользователю "планирует ли клиент участвовать в мероприятии?" с вариантами ответа "Да", "Нет", "Еще не определился, перезвонить позже" и с соответствующими действиями при выборе каждого из ответов.

Показать все комментарии
Контрагент
экспорт
Интеграция и импорт данных
Разработка

И снова здравствуйте!

Третий день мучаюсь с экспортом контрагентов в 1C. Сам контрагент, включая название передаётся легко, но загвоздка в его деталях - адресах, ИНН и КПП.

Адреса берутся из набора данных ТС "Адреса контрагента", а ИНН и КПП - из "Платежные реквизиты" но экспортируются в самого контрагента. То есть, это, вроде, подчинённые детали, а вроде и нет.

Сейчас детали настроены как подчинённые, чтобы была связь с самим контрагентом. Скорее всего, нужно правильное ключевое поле, которое я не могу подобрать. Всякие ID не будут совпадать, т.к. разные объекты в Террасофт, а других зацепок, по сути, нет.

Кто-нибудь решал эту проблему?

Нравится

14 комментариев

С ИНН и КПП разобрался программно, а также с произвольной строкой адреса. Теперь осталось только передавать детали адреса - Страну, Город, Улицу и т.д.

Лично у меня экспорт контрагентов всё одной настройкой...
Вот кусок с адресами. Событие OnAfterRecordExport:

//удалить  все адреса и средства связи	
	var ci1C = Param.Obj1C.РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей(); 
	ci1C.Отбор.Объект.Установить(Select1C.Ссылка);
	//[не регистрируем изменения на стороне 1с	
	ci1C.ОбменДанными.Получатели.АвтоЗаполнение = false;
	//]
	ci1C.Записать(); 	
	//Адреса
	var AccountID = Dataset('ID');	
	var ds = Services.GetNewItemByUSI('ds_AccountAddress');
	ApplyDatasetFilter(ds, 'AccountID', AccountID, true);
	ds.Open();
	while(!ds.IsEOF) {
		var ci1CMain = Param.Obj1C.РегистрыСведений.КонтактнаяИнформация.СоздатьНаборЗаписей();
		var ci1C = ci1CMain.Добавить();
		ci1C.Объект = Select1C.Ссылка;
		var met=Param.Obj1C.Метаданные.Перечисления.Найти("ТипыКонтактнойИнформации");
		var meta=met.ЗначенияПеречисления.Найти('Адрес');
		var metalink = Param.Obj1C.Перечисления.ТипыКонтактнойИнформации[meta.Имя];
		ci1C.Тип = metalink;
		var AdrTypeID = ds('KLADRAddressTypeID');
		var AdrTypeUID1C = GetDatasetFieldValueByID('ds_AddressType',
			AdrTypeID, 'UID1C');
		var AddressType1CLink;
		if(!IsEmptyValue(AdrTypeUID1C)) {
			AddressType1CLink = GetObjectLinkByUID(
					Param.Obj1C.Справочники.ВидыКонтактнойИнформации, AdrTypeUID1C, Param);	
			ci1C.Вид = !AddressType1CLink.Пустая() ? AddressType1CLink : null;
			ci1C.Представление = ds('KLADRAddress');
			ci1C.Поле1 = ds('KLADRAddressZIP');
			ci1C.Поле2 = ds('KLADRAddressSubject');
			ci1C.Поле3 = ds('KLADRAddressRegion');
			ci1C.Поле4 = ds('KLADRAddressDistrictCenter');
			ci1C.Поле5 = ds('KLADRAddressCity');
			ci1C.Поле6 = ds('KLADRAddressStreet');
			ci1C.Поле7 = ds('KLADRAddressHouse');
			ci1C.Поле8 = ds('KLADRAddressCase');
			ci1C.Поле9 = ds('KLADRAddressFlat');
			//[не регистрируем изменения на стороне 1с	
			ci1CMain.ОбменДанными.Получатели.АвтоЗаполнение = false;
			//]						
			ci1CMain.Записать(false); 
		}		
		ds.GotoNext();
	}
	ds.Close();

По поводу заполнения справочных реквизитов...
Получаете ID страны из детали адреса, далее по этому ID получаете значение в поле UID1C, и далее получаете ссылку на страну в 1с, и кладете её в реквизит...
Примерно так:

var Invoice1C = Param.Obj1C.Документы.Счет;
var InvoiceUID1C = GetDatasetFieldValueByID('ds_Opportunity', 
	dlData.Dataset('ID'), 'UID1C');
InvoiceUID1C = CreateGUID1C(InvoiceUID1C, Param.Obj1C);
var Link1C = Invoice1C.GetRef(InvoiceUID1C);
function CreateGUID1C(UID1C, Obj1C) {
	if(UID1C == null) {
		return '';
	}
	UID1C = UID1C.replace('{', '');
	UID1C = UID1C.replace('}', '');
	UID1C = Obj1C.NewObject('УникальныйИдентификатор', UID1C);
	return UID1C;
}

> Лично у меня экспорт контрагентов всё одной настройкой...

Да, этот ваш код мне сильно помог, хоть он и не подходит для 1С 8.3, так как "РегистрыСведений.КонтактнаяИнформация" больше не существует, они переехали в справочники.

> Получаете ID страны из детали адреса, далее по этому ID получаете значение в поле UID1C, и далее получаете ссылку на страну в 1с, и кладете её в реквизит...

Интересно. Меня смутило, что механизм интеграции определил эти поля как простые Строки, но попробовать надо.

ОК. Если что будет конкретного: кидайте ваш код или скрины.

Попробовал, не то чтобы получилось. Работает всё так:

Берём объект:

var Contragent = Select1C.Ссылка.ПолучитьОбъект();

Получаем его ID, идём по списку адресов, добавляя каждый:

var AccountID = Dataset('ID');
 
var ds = Services.GetNewItemByUSI('ds_AccountAddress');
ApplyDatasetFilter(ds, 'AccountID', AccountID, true);
ds.Open();
 
while(!ds.IsEOF) {
      AddAddress(Param, Contragent, ds);
      ds.GotoNext();
}
ds.Close();

Функция AddAddress:

	var newAddress= Contragent.КонтактнаяИнформация.Добавить() ;
	newAddress.Тип = Param.Obj1C.Перечисления.ТипыКонтактнойИнформации.Адрес;
 
	switch(Dataset('AddressTypeID'))
	{
		//Добавляем вид адреса
	}
 
       //Из комментария выше
	var Contragent1C = Param.Obj1C.Справочники.СтраныМира;
	var CountryUID1C = GetDatasetFieldValueByID('ds_Country', Dataset('CountryID'), 'UID1C');
	CountryUID1C = CreateGUID1C(CountryUID1C, Param.Obj1C);
	newAddress.Страна = Contragent1C.GetRef(CountryUID1C); 
 
	Contragent.Записать(false);

При этом поле Страна отображается верно. Однако, при обзоре в клиенте 1С, поле не заполнено.

Как-то так пока.

После записи выполните запрос в 1с и посмотрите что в этом поле. Если ничего - значит не записалось. Возможно срабатывают какие то проверки "перед записью" на стороне 1с?

Имеется ввиду запрос к БД 1С? Я, честно говоря, не в курсе, как это сделать с файловой версией 1С.

Забавно, но при попытке импорта импортируется именно то значение, что было экспортировано. Однако, в самом клиенте оно не меняется.

Посмотрите в 1С Администраторе - быть может в коде формы есть какая-то логика...

В функции РазместитьКонтактнуюИнформацию() логика загрузки простая:

ТаблицаРазмещенияКИ	= УправлениеКонтактнойИнформациейБП.ПолучитьПустуюТаблицуРазмещенияКонтактнойИнформации();
 
УправлениеКонтактнойИнформациейБП.ДобавитьОписаниеРазмещенияКонтактнойИнформации(ТаблицаРазмещенияКИ, Справочники.ВидыКонтактнойИнформации.ЮрАдресКонтрагента, Элементы.ЮрАдресКонтрагента.ПутьКДанным);

Ничего подозрительного пока не заметил.

Ну смотрите, предлагаю сделать так: зайдите в 1с и в меню "Операции" выберите "Обработка". Найдите там "КОнсоль запросов" либо "Консоль отчетов" (если нет - установите), и после записи через ТС выполните в обработке запрос к БД (думаю для файловой БД они тоже работают):

Выбрать ВашРеквизит Из Справочник.ВашСправочник.ВашаТаблЧасть
Где Ссылка.Наименование = "МойКонтрагент"

Если реквизит будет заполнен - значит запись проходит, если нет - значит нет :)

Если проходит - смотрите логику на карточке или в модуле объекта (чтото его при открытии чистит).
Если не проходит (но устанавливает корректно) - значит смотрите события модуля ПередЗаписью - что-то там его чистит.
Если не проходит (и не устанавливается) - скорее всего попутаны типы данных для реквизита.

пс: выполнение 1с-ного кода через COM (Террасофт) также можно отлаживать - погуглите.

Та-да! Всё дело в поле "ЗначенияПолей" (sic!), которое содержит... значения полей! То есть, значения всех остальных полей, у которых есть и свои собственные значения, только в xml формате. Я уже попробовал просто вбить скопированный и подправленный xml, всё загружается. Подробнее инфу можно найти тут: http://forum.aeroion.ru/topic779.html

Спасибо, Дмитрий. Без консоли запросов я бы ещё долго бился бы об это.

Ого! Это что-то новое :)

Показать все комментарии