Пример #1
0
        //создаём синхронизацию
        public static void SyncronizeWorks(ReferenceObject masterWork, ReferenceObject slaveWork)
        {
            ReferenceObject синхронизация = ProjectDependenciesReference.CreateReferenceObject(Class_ProjectDependency);

            синхронизация[SynchronizationParameterGuids.param_DependencyType_Guid].Value = 5;// DependencyType.Synchronization;
            синхронизация[SynchronizationParameterGuids.param_MasterWork_Guid].Value     = masterWork.SystemFields.Guid;
            синхронизация[SynchronizationParameterGuids.param_SlaveWork_Guid].Value      = slaveWork.SystemFields.Guid;
            синхронизация[SynchronizationParameterGuids.param_MasterProject_Guid].Value  = ProjectManagementWork.GetProject(masterWork).SystemFields.Guid;
            синхронизация[SynchronizationParameterGuids.param_SlaveProject_Guid].Value   = ProjectManagementWork.GetProject(slaveWork).SystemFields.Guid;
            синхронизация.EndChanges();
            //return синхронизация;
        }
Пример #2
0
        private ReferenceObject syncComposition(TreeViewModel pe_treeItem, bool IsCopyRes, bool IsCopyOnlyPlan /*, ref int amountAddObjects*/)
        {
            #region
            //Объект   для синхронизации
            if (pe_treeItem.IsObjectToSync /* && (bool)pe_treeItem.IsSelectObjToSynch*/)
            {
                /* Если синхронизация отсутствует, то создаём новую работу в плане РП
                 * в синхронизированной с Текущей и устанавливаем синхронизацию с дочерней из плана детализации.
                 */

                ClassObject TypePE = pe_treeItem.ProjectElement.Class;

                List <Guid> GuidsLinks = new List <Guid>()
                {
                    new Guid("063df6fa-3889-4300-8c7a-3ce8408a931a"),
                    new Guid("68989495-719e-4bf3-ba7c-d244194890d5"), new Guid("751e602a-3542-4482-af40-ad78f90557ad"),
                    new Guid("df3401e2-7dc6-4541-8033-0188a8c4d4bf"), new Guid("58d2e256-5902-4ed4-a594-cf2ba7bd4770")
                    , new Guid("0e1f8984-5ebe-4779-a9cd-55aa9c984745"), new Guid("79b01004-3c10-465a-a6fb-fe2aa95ae5b8")
                    , new Guid("339ffc33-55b2-490f-b608-a910c1f59f51")
                };


                var newPE = ProjectManagementWork.CopyPE(pe_treeItem.ProjectElement, pe_treeItem.PEForSync, GuidsLinks);

                if (newPE != null)
                {
                    //amountAddObjects++;

                    ProjectManagementWork.RecalcResourcesWorkLoad(newPE);

                    if (IsCopyRes)
                    {
                        ProjectManagementWork.СкопироватьИспользуемыеРесурсы_изЭлементаПроекта_вЭлементПроекта
                            (newPE, pe_treeItem.ProjectElement, onlyPlanningRes: IsCopyOnlyPlan, PlanningSpaceForNewRes_Guid: ProjectManagementWork.GetProject(newPE)[ProjectManagementWork.PM_param_PlanningSpace_GUID].GetGuid());
                    }

                    Synchronization.SyncronizeWorks(newPE, pe_treeItem.ProjectElement);

                    return(newPE);
                }
            }
            #endregion
            return(null);
        }