AXForum  
Zurück   AXForum > Microsoft Dynamics CRM > Dynamics CRM: Разработка
All
Kennwort vergessen?
Registrieren Forum Rules Hilfe Benutzerliste Heutige Beiträge Suchen

 
 
Themen-Optionen Thema durchsuchen Ansicht
Alt 22.11.2018, 16:07   #21  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Начал импортировал контакты (после импорта акаунтов) и получаю ошибку, что мол нет такого ИД. Не совсем ясно где вообще взялся этот ИД, и с какой сущности. Я найти такого не смог в двух системах

Посмотрел метаданные по контакту, там три ссылки на акаунт, две из которых - кастомные.
- accountid
- new_distributor
- new_hqaccount

В целевой системе нет поля accountid на сущности контакт, т.к в онлайне видимо от него избавились.

Теоретически проблема может быть в поле parentcustomerid, но в усломнов операторе SSIS стоит проверка

Zitat:
!ISNULL(parentcustomeridtype) && parentcustomeridtype == "contact"


Zitat:
Account With Id = e52affc4-aa60-e611-80e9-00155df17501 Does Not Exist (SSIS Integration Toolkit for Microsoft Dynamics 365, v8.0.0.6228 - DtsDebugHost, v13.0.4495.10)
X++:
        static void findEntity()
        {
             var allEntities = GetEntities(connection);
            foreach (EntityMetadata Entity in allEntities)
            {
                try
                {
                    var entity = connection.Retrieve(Entity.LogicalName, new Guid("e52affc4-aa60-e611-80e9-00155df17501"), new ColumnSet(true));
                    Console.WriteLine($"Id found for entity {Entity.LogicalName}");
                    Console.ReadKey();
                }
                catch  {

                }

            }
        }

        public static EntityMetadata[] GetEntities(IOrganizationService organizationService)
        {
            Dictionary<string, string> attributesData = new Dictionary<string, string>();
            RetrieveAllEntitiesRequest metaDataRequest = new RetrieveAllEntitiesRequest();
            RetrieveAllEntitiesResponse metaDataResponse = new RetrieveAllEntitiesResponse();
            metaDataRequest.EntityFilters = EntityFilters.Entity;

            metaDataResponse = (RetrieveAllEntitiesResponse)organizationService.Execute(metaDataRequest);

            var entities = metaDataResponse.EntityMetadata;

            return entities;
        }

Geändert von Ion (22.11.2018 um 16:24 Uhr)
Alt 22.11.2018, 16:44   #22  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
В общем, банально был битый контакт

Пришлось найти запись по атрибуту

X++:
            QueryExpression query = new QueryExpression
            {
                EntityName = "contact",
                ColumnSet = new ColumnSet(true),
                Criteria = new FilterExpression
                {
                    Conditions =
                                {

                    new ConditionExpression
                    {
                        AttributeName = "parentcustomerid",
                        Operator = ConditionOperator.Equal,
                        Values = { accountId }
                    }
                }
                }
            };
Alt 26.11.2018, 14:34   #23  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Привет,

Как корректно мигрировать сущность 'Lead to Opportunity Sales Process'?

В какой-то момент начинает падать data flow task с текстом

Zitat:
Participating entity must be part of traversed path. But input participating entity : "opportunity", does not belong to the traversed path:"f99b4d48-7aad-456e-864a-8e7d543f7495" [14]
Что это за ошибка и как ее разрешить? Буду благодарен за наводку.

Сущности лид и оппортюнити уже в системе.
Alt 26.11.2018, 16:26   #24  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Был у меня неприятный опыт миграции таких сущностей. Все свелось к тому, что я удалял все процессы которые создались автоматически и заливал эти сущности через создание. Правда отличие в том, что у меня не было процесса с несколькими сущностями. Думаю, что вы будете первопроходцем. Делитесь опытом, если решите задачу.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 27.11.2018, 18:16   #25  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Zitat:
Zitat von a33ik Beitrag anzeigen
Был у меня неприятный опыт миграции таких сущностей. Все свелось к тому, что я удалял все процессы которые создались автоматически и заливал эти сущности через создание. Правда отличие в том, что у меня не было процесса с несколькими сущностями. Думаю, что вы будете первопроходцем. Делитесь опытом, если решите задачу.
Видимо прийдеться попариться с ними
Alt 05.12.2018, 18:24   #26  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Все привет!

В общем все шло гладко до момента миграции активностей.

Суть проблемы: есть 5 пользователей, которые уже не работают, так вот они встречаються в Звонках, Тасках, Апойментах и в других активностях. Если они являються овнерами или создателями, то проблем нет, просто указываем дефолтного пользователя и все, но если эти же юзера встечаються в таких полях как 'from/to' на звонках или Attendees в Апоинтах, то тут уже масса проблем.

Что предпочительней в данной ситуации: не мигрировать такие записи, есть вариант как установить дефолтного пользователя или что-то еще.
Alt 05.12.2018, 19:15   #27  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Есть несколько вариантов. Я планирую все расписать в блоге, когда доберусь до этого поста. Во что я делаю сейчас:
1. Собираю список всех пользователей, которые есть в старом CRM, а именно нужны следующие данные: FirstName, Last Name, Email Address. Создаю или файлик или таблицу в базе, которые содержат эти поля.
2. В SSIS делаете вычитку или из файла или из базы, чтобы получить следующие поля - FirstName, LastName, PrimaryEmailAddress, WindowsLiveId. Последние 2 колонки содержат одинаковые данные. Именно эти поля необходимы чтобы создать записи пользователей, но будьте очень внимательны и осторожны - вы не сможете эти записи удалить.
3. Средствами SSIS запускаю создание указанных пользователей - это создаст записи пользователей в онлайне. Пользователи буду неактивны, будут иметь роль SalesManager (или чтото вроде того), не будут занимать лицензию.

Таким образом я получал полный список активных и неактивных пользователей и мигрировал данные без проблем.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit

Geändert von a33ik (05.12.2018 um 19:20 Uhr)
This post has been rated by: Ion (1).
Alt 05.12.2018, 19:22   #28  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
На самом деле у меня все веселье началось, когда создание активностей начало падать изза ссылок на контакты, компании и лиды, которые были удалены. Что делать в таком случае я тоже распишу в посте. Когда только на все это найти время...
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 05.12.2018, 19:36   #29  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Zitat:
Zitat von a33ik Beitrag anzeigen
Есть несколько вариантов. Я планирую все расписать в блоге, когда доберусь до этого поста. Во что я делаю сейчас:
1. Собираю список всех пользователей, которые есть в старом CRM, а именно нужны следующие данные: FirstName, Last Name, Email Address. Создаю или файлик или таблицу в базе, которые содержат эти поля.
2. В SSIS делаете вычитку или из файла или из базы, чтобы получить следующие поля - FirstName, LastName, PrimaryEmailAddress, WindowsLiveId. Последние 2 колонки содержат одинаковые данные. Именно эти поля необходимы чтобы создать записи пользователей, но будьте очень внимательны и осторожны - вы не сможете эти записи удалить.
3. Средствами SSIS запускаю создание указанных пользователей - это создаст записи пользователей в онлайне. Пользователи буду неактивны, будут иметь роль SalesManager (или чтото вроде того), не будут занимать лицензию.

Таким образом я получал полный список активных и неактивных пользователей и мигрировал данные без проблем.
То есть если банально создать пользователя в онлайн, который уже не работает и дать ему простую роль, то он не будет требовать лицензирования? С онлайном пока не так плотно знаком во всех деталях, тоже думал об этом.
Все пользователи синхронизированы, помимо пяти, наверное их создам.
Alt 05.12.2018, 19:38   #30  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Zitat:
Zitat von a33ik Beitrag anzeigen
На самом деле у меня все веселье началось, когда создание активностей начало падать изза ссылок на контакты, компании и лиды, которые были удалены. Что делать в таком случае я тоже распишу в посте. Когда только на все это найти время...
Так а что делать? Искать по аттрибуту (Контакта, Лида и т.д.) активности и просто очищать ссылки? По крайней мере я так делал
Alt 05.12.2018, 19:40   #31  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Zitat:
Zitat von Ion Beitrag anzeigen
То есть если банально создать пользователя в онлайн, который уже не работает и дать ему простую роль, то он не будет требовать лицензирования? С онлайном пока не так плотно знаком во всех деталях, тоже думал об этом.
Все пользователи синхронизированы, помимо пяти, наверное их создам.
С интерфейса у вас это не получится, но можно через эндпоинт. По поводу роли - вы не сможете дать или забрать роль. Роль дастся по умолчанию. По поводу лицензии - да, лицензия не будет требоваться для данного пользователя.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 06.12.2018, 09:04   #32  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Zitat:
Zitat von Ion Beitrag anzeigen
Так а что делать? Искать по аттрибуту (Контакта, Лида и т.д.) активности и просто очищать ссылки? По крайней мере я так делал
А тут все зависело от того как с клиентом договориться. Для одного потребовалось воссоздавать записи, для другого договорились создать в активности доп поля и туда затягивал то, что есть по записи.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 09.12.2018, 23:51   #33  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Пишу сейчас статью про миграцию, потому как материальчик поднакопился и как раз домигрировал еще одного клиента в облако. Подписывайтесь на мой блог, если интересно.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 11.12.2018, 20:19   #34  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Уже подписался.)))

В Kingswaysoft как мне ассоцировать Opportunity and Competitors? Или с помощью C#, не нашел что-то связи
Alt 11.12.2018, 20:34   #35  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Zitat:
Zitat von Ion Beitrag anzeigen
В Kingswaysoft как мне ассоцировать Opportunity and Competitors? Или с помощью C#, не нашел что-то связи
Плохо искали:
Klicken Sie auf die Grafik für eine größere Ansicht

Name:	OpportunityCompetitor.png
Hits:	411
Größe:	30,2 KB
ID:	12160
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 11.12.2018, 21:12   #36  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Zitat:
Zitat von a33ik Beitrag anzeigen
Плохо искали:
Anhang 12160
То есть надо ручками все делать, писать код?
Alt 11.12.2018, 21:14   #37  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Кстати и я столкнулся с удаленными контактами в appointments. Такой солюшен по их воссозданию ок?

X++:
            Guid entityId = Guid.Parse("93c31bd0-848b-e811-8118-00155df17501");
            string entityLogicalName = "contact";

            // Retrieve the audit records for entity.
            RetrieveRecordChangeHistoryRequest changeRequest = new RetrieveRecordChangeHistoryRequest();
            changeRequest.Target = new EntityReference(entityLogicalName, entityId);

            RetrieveRecordChangeHistoryResponse changeResponse =
               (RetrieveRecordChangeHistoryResponse)connection.Execute(changeRequest);

            AuditDetailCollection details = changeResponse.AuditDetailCollection;

            for (int count = 0; count < details.Count; count++)
            {
                if (typeof(AttributeAuditDetail).Name == details[count].GetType().Name)
                {
                    AttributeAuditDetail detail = details[count] as AttributeAuditDetail;
       
                    if (detail.NewValue == null && detail.OldValue != null)
                    {
                        Entity entity = detail.OldValue;
                        connection.Create(entity);
                        break;
                    }
                }
            }
This post has been rated by: a33ik (1).
Alt 11.12.2018, 21:15   #38  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Zitat:
Zitat von Ion Beitrag anzeigen
То есть надо ручками все делать, писать код?
Зачем? KingswaySoft прекрасно с этим справляется.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 11.12.2018, 21:17   #39  
a33ik ist offline
a33ik
Чайный пьяница
Benutzerbild von a33ik
MCP
MCBMSS
Злыдни
Соотечественники
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3.243 / 896 (36) +++++++
Registriert seit: 02.07.2008
Ort: Greenville, SC
Zitat:
Zitat von Ion Beitrag anzeigen
Кстати и я столкнулся с удаленными контактами в appointments. Такой солюшен по их воссозданию ок?
Это сработает только если у вас аудит был включен. Кстати хорошая идея - я об этом и не подумал. Я создавал исходя из того, что есть в ActivityParty записи.
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством.

Подписывайтесь на мой блог, twitter и YouTube канал.
Пользуйтесь моим Ultimate Workflow Toolkit
Alt 11.12.2018, 21:25   #40  
Ion ist offline
Ion
Участник
 
332 / 16 (1) ++
Registriert seit: 19.12.2012
Zitat:
Zitat von a33ik Beitrag anzeigen
Плохо искали:
Anhang 12160
Zitat:
Zitat von a33ik Beitrag anzeigen
Зачем? KingswaySoft прекрасно с этим справляется.
Ммм, окей, у меня в дата флоу тасках для оппортюнити и компетитора везде стоит "Upsert ", но почему-то связи не создаються или мне надо еще новую дата флоу таску создать?
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
NAV Team: Upgrading from Microsoft Dynamics NAV 2009 R2 or Microsoft Dynamics NAV 2009 SP1 to Microsoft Dynamics NAV 2015 Blog bot Dynamics CRM: Blogs 0 23.02.2015 13:00
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 17 Blog bot Dynamics CRM: Blogs 0 10.05.2014 06:30
crminthefield: Podcast and Overview: Microsoft Dynamics CRM 2011 Update Rollup 16 Blog bot Dynamics CRM: Blogs 0 23.01.2014 03:15
crminthefield: Overview: Microsoft Dynamics CRM 4.0 Update Rollup 17 Blog bot Dynamics CRM: Blogs 0 06.05.2011 09:11
german_nav_developer: Buildnummern-Übersicht Microsoft Dynamics NAV 2009 SP1 Blog bot Dynamics CRM: Blogs 0 11.06.2010 16:33

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Gehe zu

Рейтинг@Mail.ru
Alle Zeitangaben in WEZ +3. Es ist jetzt 19:39 Uhr.
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.