/// <summary> /// Démarre une action /// </summary> /// <param name="process"></param> /// <param name="nIdSession"></param> /// <returns></returns> public static CResultAErreur RunEvent(IDeclencheurAction declencheur, CObjetDonneeAIdNumerique objetCible, bool bHideProgress) { CFormExecuteProcess form = new CFormExecuteProcess(); form.Top = 0; form.Left = Screen.PrimaryScreen.WorkingArea.Width / 2 - form.Width / 2; if (declencheur is IDeclencheurActionManuelle) { bHideProgress |= ((IDeclencheurActionManuelle)declencheur).HideProgress; } if (bHideProgress) { CInfoDeclencheurProcess infoDeclencheur = new CInfoDeclencheurProcess(TypeEvenement.Manuel); CAppelleurFonctionAsynchrone appeleur = new CAppelleurFonctionAsynchrone(); CResultAErreur resultDefault = CResultAErreur.True; resultDefault.EmpileErreur(I.T("Asynchronous call error @1|20149", "RunEvent")); return(appeleur.StartFonctionAndWaitAvecCallback(declencheur.GetType(), declencheur, "RunEvent", "", resultDefault, objetCible, infoDeclencheur, null) as CResultAErreur); //return declencheur.RunEvent(objetCible, infoDeclencheur, null); } else { IAsyncResult res = form.m_runEvent.BeginInvoke(declencheur, objetCible, new AsyncCallback(form.OnEndProcess), null); form.ShowDialog(); //Bloque le code ici ! CResultAErreur result = form.m_runEvent.EndInvoke(res); return(result); } }
//----------------------------------------------------------------------------------------------------- public void onClickMenuActionEventHandler(IDeclencheurAction declencheur, CObjetDonneeAIdNumerique objetAction) { CResultAErreur result = CFormExecuteProcess.RunEvent(declencheur, objetAction, false); if (!result) { CFormAlerte.Afficher(result.Erreur); } }
//------------------------------------------------------------------------ public CMenuItemActionManuelle( IDeclencheurAction declencheur, CObjetDonneeAIdNumerique objetAction) : base(declencheur.Libelle) { m_declencheur = declencheur; m_objetAction = objetAction; Click += new EventHandler(CMenuItemActionManuelle_Click); }
void OnClickItemActionSurProjet(IDeclencheurAction declencheur, CObjetDonneeAIdNumerique objetAction) { if (declencheur != null && objetAction != null) { CResultAErreur result = CResultAErreur.True; if (!LockEdition) { IDeclencheurActionManuelle declencheurManuel = declencheur as IDeclencheurActionManuelle; if (declencheurManuel != null) { // Déclancher ici l'évenement manuelle sur Client result = declencheurManuel.EnregistreDeclenchementEvenementSurClient( objetAction, new CInfoDeclencheurProcess(TypeEvenement.Manuel), null); } else { MessageBox.Show(I.T("Can not start this action|20673")); } } else { // Déclancher ici l'évenement manuelle sur Serveur result = CFormExecuteProcess.RunEvent(declencheur, objetAction, false); } if (!result) { CFormAlerte.Afficher(result.Erreur); } else { CFormEditionStandard form = FindForm() as CFormEditionStandard; if (form != null) { form.Actualiser(); } } } }
//------------------------------------------------------------------------- private void MenuDeclencheurClick(object sender, EventArgs e) { if (sender is CMenuItemDeclencheur) { IDeclencheurAction declencheur = ((CMenuItemDeclencheur)sender).Declencheur; /*CInfoDeclencheurProcess infoDeclencheur = new CInfoDeclencheurProcess(TypeEvenement.Manuel); * CResultAErreur result = declencheur.RunEventMultiple ( * (CObjetDonneeAIdNumeriqueAuto[])m_panelListe.GetElementsCheckes().ToArray(typeof(CObjetDonneeAIdNumeriqueAuto)), * infoDeclencheur );*/ CResultAErreur result = CFormExecuteProcess.RunEventMultiple( declencheur, (CObjetDonneeAIdNumerique[])m_panelListe.GetElementsCheckes().ToArray(typeof(CObjetDonneeAIdNumerique)), false); m_panelListe.Refresh(); if (!result) { CFormAlerte.Afficher(result.Erreur); } } }
//------------------------------------------------------------- private void OnActionSurBesoin(IDeclencheurAction declencheur, CObjetDonneeAIdNumerique objetCible) { CResultAErreur result = CResultAErreur.True; if (!LockEdition) { MajChamps(); IDeclencheurActionManuelle declencheurManuel = declencheur as IDeclencheurActionManuelle; if (declencheurManuel != null) { // Déclancher ici l'évenement manuelle sur Client result = declencheurManuel.EnregistreDeclenchementEvenementSurClient( objetCible, new CInfoDeclencheurProcess(TypeEvenement.Manuel), null); } else { MessageBox.Show(I.T("Can not start this action|20673")); } } else { result = CFormExecuteProcess.RunEvent(declencheur, objetCible, false); } if (!result) { CFormAlerte.Afficher(result.Erreur); } else { if (AssociatedListControl != null) { AssociatedListControl.Refill(); } } }
/// <summary> /// Démarre une action /// </summary> /// <param name="process"></param> /// <param name="nIdSession"></param> /// <returns></returns> public static CResultAErreur RunEventMultiple(IDeclencheurAction declencheur, CObjetDonneeAIdNumerique[] objetsCibles, bool bHideProgress) { CFormExecuteProcess form = new CFormExecuteProcess(); form.Top = 0; form.Left = Screen.PrimaryScreen.WorkingArea.Width / 2 - form.Width / 2; if (declencheur is IDeclencheurActionManuelle) { bHideProgress |= ((IDeclencheurActionManuelle)declencheur).HideProgress; } if (bHideProgress) { CInfoDeclencheurProcess infoDeclencheur = new CInfoDeclencheurProcess(TypeEvenement.Manuel); return(declencheur.RunEventMultiple(objetsCibles, infoDeclencheur, null)); } else { IAsyncResult res = form.m_runEventMultiples.BeginInvoke(declencheur, objetsCibles, new AsyncCallback(form.OnEndProcess), null); form.ShowDialog(); //Bloque le code ici ! CResultAErreur result = form.m_runEventMultiples.EndInvoke(res); return(result); } }
/// ///////////////////////////////////////////////////////////////////////// private CResultAErreur RunEventMultiplesPrivate(IDeclencheurAction declencheur, CObjetDonneeAIdNumerique[] objetsCibles) { CInfoDeclencheurProcess infoDeclencheur = new CInfoDeclencheurProcess(TypeEvenement.Manuel); return(declencheur.RunEventMultiple(objetsCibles, infoDeclencheur, this)); }
public CMenuItemDeclencheur(IDeclencheurAction declencheur) { Declencheur = declencheur; Text = declencheur.Libelle; }