//---------------------------------------------------------------------------- public CResultAErreur InitPanel(CTicket ticketEdité) { this.SuspendDrawing(); if (ticketEdité == null) { return(CResultAErreur.False); } CResultAErreur result = CResultAErreur.True; m_ticketEdite = ticketEdité; m_utilisateur = CUtilSession.GetUserForSession(m_ticketEdite.ContexteDonnee); m_extLinkField.FillDialogFromObjet(m_ticketEdite); // Init panel Infos générales InitInfosGenerales(); // Init Détail Ticket this.ResumeDrawing(); return(result); }
public CResultAErreur SetParametres(System.Collections.Generic.Dictionary <string, object> dicParametres) { CResultAErreur result = CResultAErreur.True; object obj = null; if (dicParametres.TryGetValue(c_nomParametreId, out obj)) { if (obj is int) { int nId = (int)obj; CTicket ticket = new CTicket(CSc2iWin32DataClient.ContexteCourant); if (nId == -1) { ticket.CreateNew(); } else if (!ticket.ReadIfExists(nId)) { result.EmpileErreur(I.T("There is no Crystal Report Model corresponding to the Id: @1|10006", nId.ToString())); return(result); } // Affecte le ticket édité this.ObjetEdite = ticket; } else { result.EmpileErreur(I.T("The Ticket ID parameter must be an integer value|10007")); } } return(result); }
//--------------------------------------------------------------------------------- public CResultAErreur Init(CTicket ticket) { if (ticket == null) { return(CResultAErreur.False); } CResultAErreur result = CResultAErreur.True; m_ticketEdite = ticket; result = m_extLinkField.FillDialogFromObjet(m_ticketEdite); result = InitComboEtatCloture(true); m_cmbxSelectEtatCloture.ElementSelectionne = m_ticketEdite.EtatCloture; if (m_ticketEdite.DateClotureTechnique != null) { m_dateClotureTech.Value = (DateTime)m_ticketEdite.DateClotureTechnique; } else { m_dateClotureTech.Value = null; } InitSelectResoluPar(); m_txtSelectResoluPar.ElementSelectionne = m_ticketEdite.ResponsableClotureTechnique; return(result); }
//---------------------------------------------------------------------- public void Init(CTicket ticket) { m_ticket = ticket; //Initialisation du filtre de base m_filtrebase = new CFiltreData(CTicket.c_champId + " <> @1 AND " + CTicket.c_champEtat + " = 0 ", m_ticket.Id); //Initialisation Maitres //tool tip m_tooltip.SetToolTip(m_chkMaitreClotureAuto, "The ticket will be automatically closed when the selected master Ticket is closed|1104"); //Initialisation des maîtres m_gestionnaireMaitres.ObjetEdite = m_ticket.RelationsMaitresListe; //Initialisation Esclaves //tool tip m_tooltip.SetToolTip(m_chkEsclaveClotureAuto, "The selected slave Ticket will be automaticaly closed when this Tikcet is closed|1105"); //Initialisation des esclaves m_gestionnaireEsclaves.ObjetEdite = m_ticket.RelationsEsclavesListe; MAJFiltreSelectionneurs(); m_lnkEsclaveEditer.Visible = false; m_lnkMaitreEditer.Visible = false; m_chkMaitreClotureAuto.Visible = false; m_chkEsclaveClotureAuto.Visible = false; }
public void Init() { m_contexte = sc2i.win32.data.CSc2iWin32DataClient.ContexteCourant; m_nouveauTicket = new CTicket(m_contexte); m_nouveauTicket.CreateNew(); m_panelEditionTicket.InitPanel(m_nouveauTicket); }
//------------------------------------------------------------------- public void Init(CTicket ticket) { m_ticketEdite = ticket; InitSelectSite(); InitSelectEO(); InitListeSites(); InitListeEOs(); }
//------------------------------------------------------------------- public override CResultAErreur VerifieDonnees(CObjetDonnee objet) { CResultAErreur result = CResultAErreur.True; try { CTicket ticket = (CTicket)objet; //On vérifi qu'il n'y a aucun des esclaves qui est déjàmaitre de ce ticket foreach (CDependanceTicket dep in ticket.RelationsEsclavesListe) { if (dep.TicketEsclave.IsMaitre(ticket)) { result.EmpileErreur(I.T("The slave ticket @1 is already defined as a master of this ticket|229", dep.TicketEsclave.Numero)); } } //On vérifi qu'il n'y a aucun des maitres qui est déjàesclave de ce ticket foreach (CDependanceTicket dep in ticket.RelationsMaitresListe) { if (ticket.IsMaitre(dep.TicketMaitre)) { result.EmpileErreur(I.T("The master ticket @1 is already defined as a slave of this ticket|230", dep.TicketMaitre.Numero)); } } if (ticket.Responsable == null) { result.EmpileErreur(I.T("A person in charge of this ticket must be affected|231")); } // Saisie des détails if (ticket.Client == null) { result.EmpileErreur(I.T("The Customer cannot be empty|232")); } if (ticket.Contrat == null) { result.EmpileErreur(I.T("The Contract cannot be empty|233")); } if (ticket.TypeTicket == null) { result.EmpileErreur(I.T("The Ticket Type cannot be empty|234")); } // Le Tikcet doit avoir au moins une phase de résolution //if (ticket.PhasesListe.Count == 0) // result.EmpileErreur(I.T("The ticket must have at least one resolution phase|235")); } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } return(result); }
//------------------------------------------------------------------- /// <summary> /// /// </summary> /// <param name="contexte"></param> /// <returns></returns> public override CResultAErreur TraitementAvantSauvegarde(CContexteDonnee contexte) { CResultAErreur result = CResultAErreur.True; DataTable table = contexte.Tables[GetNomTable()]; ArrayList lst = new ArrayList(table.Rows); foreach (DataRow row in lst) { if (row.RowState == DataRowState.Modified) { CTicket ticket = new CTicket(row); DataRowVersion currentVersion = ticket.VersionToReturn; CDonneesActeurUtilisateur respApresModif = ticket.Responsable; DateTime?dateClotureTechApres = ticket.DateClotureTechnique; ticket.VersionToReturn = DataRowVersion.Original; CDonneesActeurUtilisateur respAvantModif = ticket.Responsable; DateTime?dateClotureTechAvant = ticket.DateClotureTechnique; ticket.VersionToReturn = currentVersion; // Si le Responsable a été modifié, création d'un Historique if (respApresModif != null) { if (respAvantModif == null || respApresModif != respAvantModif) { if (respApresModif.Acteur != null) { ticket.CreerHistorique(ticket.PhaseEnCours, I.T("Ticket assigned to : |406") + respApresModif.Acteur.IdentiteComplete); } } } // Si la date de cloture technique change if (dateClotureTechApres != null && dateClotureTechApres != dateClotureTechAvant) { ticket.CreerHistorique(ticket.PhaseEnCours, I.T("Technical closing date set to @1|407", dateClotureTechApres.ToString())); } } } return(result); }
//---------------------------------------------------------------------- private void AfficherTicket(CTicket tkt) { //Type t = CFormFinder.GetTypeFormToEdit(tkt.GetType()); //if (typeof(IFormNavigable).IsAssignableFrom(t)) //{ // IFormNavigable iformnav = (IFormNavigable)Activator.CreateInstance(t, new object[] { tkt }); // CTimosApp.Navigateur.AffichePage(iformnav); //} CReferenceTypeForm refTypeForm = CFormFinder.GetRefFormToEdit(tkt.GetType()); if (refTypeForm != null) { IFormNavigable iformnav = refTypeForm.GetForm(tkt) as IFormNavigable; if (iformnav != null) { CTimosApp.Navigateur.AffichePage(iformnav); } } }
public CResultAErreur InitPanel(CTicket ticketEdité) { m_bIsInitialising = true; this.SuspendDrawing(); if (ticketEdité == null) { return(CResultAErreur.False); } CResultAErreur result = CResultAErreur.True; m_ticketEdite = ticketEdité; m_utilisateur = CUtilSession.GetUserForSession(m_ticketEdite.ContexteDonnee); if (m_ticketEdite.IsNew()) { m_bNouveau = true; m_ticketEdite.CreerHistorique(null, I.T("Ticket opening|675")); } else { m_bNouveau = false; } m_extLinkField.FillDialogFromObjet(m_ticketEdite); // Init panel Infos générales InitInfosGenerales(); // Init Détail Ticket InitDetailTicket(); InitOnglets(); m_bIsInitialising = false; UpdateVisuEntete(m_bInfosEnteteAffiche); this.ResumeDrawing(); return(result); }
//---------------------------------------------------------------------- private void m_MaitreAjout_LinkClicked(object sender, EventArgs e) { if (m_txtMaitreSelec.ElementSelectionne != null) { CTicket tkt = (CTicket)m_txtMaitreSelec.ElementSelectionne; if (tkt.Equals(m_ticket)) { CFormAlerte.Afficher(I.T("A Ticket cannot be master of itself|1106"), EFormAlerteType.Exclamation); } else if (m_ticket.IsMaitre(tkt)) { CFormAlerte.Afficher(I.T("This Ticket cannot be a master Ticket, it is already slave of the current Ticket|1107"), EFormAlerteType.Exclamation); } else { CDependanceTicket dependancetkt = new CDependanceTicket(m_ticket.ContexteDonnee); dependancetkt.TicketMaitre = tkt; dependancetkt.TicketEsclave = m_ticket; dependancetkt.ClotureAutoEscalve = false; dependancetkt.CreateNewInCurrentContexte(); ListViewItem item = new ListViewItem(); m_listeMaitres.Items.Add(item); m_listeMaitres.UpdateItemWithObject(item, dependancetkt); foreach (ListViewItem itemSel in m_listeMaitres.SelectedItems) { itemSel.Selected = false; } item.Selected = true; m_txtMaitreSelec.ElementSelectionne = null; MAJFiltreSelectionneurs(); } } }
//-------------------------------------------------------------------------- private void m_lnkNouveauTicket_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { // Créer un nouveau ticket CTicket ticket = new CTicket(m_listeObjets.ContexteDonnee); ticket.CreateNew(); // Edition dans un nouvel onglet CReferenceTypeForm rTpForm = CFormFinder.GetRefFormToEdit(typeof(CTicket)); if (rTpForm != null) { IFormNavigable form = rTpForm.GetForm(ticket) as IFormNavigable; if (form != null) { CTimosApp.Navigateur.AffichePageDansNouvelOnglet(form); } } //CFormNavigateurPopup.Show(new CFormEditionTicket(ticket),FormWindowState.Maximized); InitPanel(); }
//------------------------------------------------------------------------- public CFormEditionTicket(CTicket ticket, CListeObjetsDonnees liste) : base(ticket, liste) { // Cet appel est requis par le Concepteur Windows Form. InitializeComponent(); }
//------------------------------------------------------------------------- public CFormEditionTicket(CTicket ticket) : base(ticket) { // Cet appel est requis par le Concepteur Windows Form. InitializeComponent(); }
public CResultAErreur Execute(int nIdSession, Hashtable valeursParametres) { CResultAErreur result = CResultAErreur.True; using (CContexteDonnee contexte = new CContexteDonnee(nIdSession, true, false)) { try { CHandlerEvenementServeur.SuspendGestionnaire(true); contexte.EnableTraitementsAvantSauvegarde = false; CListeObjetsDonnees lstInterventions = new CListeObjetsDonnees(contexte, typeof(CIntervention)); //*** DEBUG *** //lstInterventions.Filtre = new CFiltreData( // CIntervention.c_champId + " > @1 ", // 8500); int compteur = lstInterventions.CountNoLoad; // FIN DEBUG lstInterventions.ReadDependances("PhaseTicket.Ticket.RelationsChampsCustom"); lstInterventions.ReadDependances("RelationsIntervenants"); foreach (CIntervention inter in lstInterventions) { compteur--; CPhaseTicket phase = inter.PhaseTicket; if (phase != null) { // Copier les compte rendu pour OTA depuis l'intervention vers le ticket CTicket ticketLié = phase.Ticket; // 113 = Id du champ [Compte rendu d'Intervention modifié] string strCompteRendu = (string)inter.GetValeurChamp(113); // 114 = Id du champ [Compte rendu résumé pour OTA] ticketLié.SetValeurChamp(144, strCompteRendu); // Affecter le technicien sur les Phases de ticket CActeur acteur = null; if (phase.GetValeurChamp(146) == null) { foreach (CIntervention_Intervenant rel in inter.RelationsIntervenants) { acteur = rel.Intervenant; // 146 = Id du champ [Technicien affecté] sur Phase if (acteur != null) { phase.SetValeurChamp(146, acteur); break; } } } } } result = contexte.SaveAll(true); if (!result) { result.EmpileErreur("Erreur de sauvegarde des données"); return(result); } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } finally { CHandlerEvenementServeur.SuspendGestionnaire(false); } } return(result); }
public CResultAErreur Execute(int nIdSession, Hashtable valeursParametres) { CResultAErreur result = CResultAErreur.True; using (CContexteDonnee contexte = new CContexteDonnee(nIdSession, true, false)) { StreamReader reader = null; try { CHandlerEvenementServeur.SuspendGestionnaire(true); contexte.EnableTraitementsAvantSauvegarde = false; // Charges tous les tickets CListeObjetsDonnees listeTicketsACharger = new CListeObjetsDonnees(contexte, typeof(CTicket)); listeTicketsACharger.ReadDependances("RelationsChampsCustom"); // Lire le CSV string strFichierImport = "c:\\TimosData\\IMPORT_JANVIER_MARS_2009.csv"; reader = new StreamReader(strFichierImport); // Lit l'entête de colonnes string strLine = reader.ReadLine(); // Lit la première ligne strLine = reader.ReadLine(); while (strLine != null) { // Pour chaque ligne du ficher string[] strChamps = strLine.Split(';'); string strNumeroTicket = strChamps[0]; string strIdQualif = strChamps[2]; // Traitement CTicket ticket = new CTicket(contexte); if (ticket.ReadIfExists(new CFiltreData( CTicket.c_champNumero + " = @1", strNumeroTicket))) { CQualificationTicket qualif = new CQualificationTicket(contexte); if (qualif.ReadIfExists(new CFiltreData( CQualificationTicket.c_champId + " = @1", Int32.Parse(strIdQualif)))) { // Affecte la valeur du champs custom 147 : Requalification ticket.SetValeurChamp(147, qualif); } } // Lit la ligne suivante strLine = reader.ReadLine(); } reader.Close(); result = contexte.SaveAll(true); if (!result) { result.EmpileErreur("Erreur de sauvegarde des données"); return(result); } } catch (Exception e) { result.EmpileErreur(new CErreurException(e)); } finally { CHandlerEvenementServeur.SuspendGestionnaire(false); if (reader != null) { reader.Close(); } } } return(result); }