public void WunschListeVerantwortlichSelektion (Basics.DataSelection RequestedPhaseParameter)
			{
			RequestedSortOrder = DataWrapper.SortOrder.Verantwortlich;
			RequestedPhase = RequestedPhaseParameter;
			HeadLine = "Alle " + WordUp23.Basics.Instance.WordUpName + " Vorschläge geordnet nach Verantwortlichkeiten (Bezirk, Organisation, Schule oder Privat)";
			CreateSortedData ();
			}
		public void WunschListeNumericProjektIDSelection (Basics.DataSelection RequestedPhaseParameter)
			{
			RequestedSortOrder = DataWrapper.SortOrder.NumericProjektID;
			RequestedPhase = RequestedPhaseParameter;
			HeadLine = "Alle " + WordUp23.Basics.Instance.WordUpName + " Planungen geordnet nach numerischem Projektcode";
			CreateSortedData ();
			}
		public void ProjektListeTypenSelektion (Basics.DataSelection RequestedPhaseParameter)
			{
			RequestedSortOrder = DataWrapper.SortOrder.Typen;
			RequestedPhase = RequestedPhaseParameter;
			HeadLine = "Alle " + WordUp23.Basics.Instance.WordUpName + " Planungen geordnet nach Wunschtypen";
			CreateSortedData ();
			}
		public void PlanungListeBezirksTeileSelection (Basics.DataSelection RequestedPhaseParameter)
			{
			RequestedSortOrder = DataWrapper.SortOrder.ArbeitsGruppen;
			RequestedPhase = RequestedPhaseParameter;
			HeadLine = "Alle " + WordUp23.Basics.Instance.WordUpName + " Planungen geordnet nach Arbeitsgruppen und Ortsteilen";
			CreateSortedData ();
			}
示例#5
0
文件: PrintOut.cs 项目: heinzsack/DEV
		public void CreatePlakatListings(DataWrapper.SortOrder SortCriteria,
            Basics.DataSelection SpecialPhase, String[] SecurityGroupParameter,
            bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine,
            String OutputFileName, String HeadLine)
            {
			WSPlakatContentType[] typesToProcess = new WSPlakatContentType[]
			   {
				WSPlakatContentType.nichtZugeordnet,
				WSPlakatContentType.Zugeordnet,
				WSPlakatContentType.alle
			   };
	        foreach (WSPlakatContentType wsPlakatContentType in typesToProcess)
		        {
		        String TopHeadLine = String.Empty;
				switch (wsPlakatContentType)
					{
					case WSPlakatContentType.alle:
						TopHeadLine = $"{HeadLine} {DateTime.Now.ToString("MMM-dd")} erfasste Plakate aller Klassen";
						break;
					case WSPlakatContentType.nichtZugeordnet:
						TopHeadLine = $"{HeadLine} {DateTime.Now.ToString("MMM-dd")} noch nicht zugeordnete Plakate";
						break;
					case WSPlakatContentType.Zugeordnet:
						TopHeadLine = $"{HeadLine} {DateTime.Now.ToString("MMM-dd")} nur zugeordnete Plakate";
						break;
					}
		        String DetailedOutputFileName = OutputFileName.Replace(".", $"_{wsPlakatContentType}.");
				CreatePlakatListingsDependingOnAssignmentStatus(SortCriteria,
			        SpecialPhase, SecurityGroupParameter,
			        WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine,
					DetailedOutputFileName, TopHeadLine, wsPlakatContentType);
		        }
			}
示例#6
0
文件: PrintOut.cs 项目: heinzsack/DEV
        private void CreateProjectListNumericID(IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> SortableProjekte,
            Basics.DataSelection Phase, String PrintThisSecurityGroup, String GroupingInfo)
            {
            if (!Directory.Exists(DataWrapper.Instance.TargetDirectory + "\\ProjektListings\\Numeric"))
                Directory.CreateDirectory(DataWrapper.Instance.TargetDirectory + "\\ProjektListings\\Numeric");

            String OutputFileName =
                System.IO.Path.Combine(DataWrapper.Instance.TargetDirectory + "\\ProjektListings\\Numeric",
                    "Stand_" + DataWrapper.Instance.RuntimeEnvironmentShortText + "_"
                    + Enum.GetName(typeof (Basics.DataSelection), Phase) + "_" + PrintThisSecurityGroup
                    + "_" + GroupingInfo + ".pdf");
            List<Object> CollectionOfClassesToPrint = new List<object>();
            bool FirstProjektInProjektOrt = true;
            foreach (DbEntities.dbserver3.wordup.rows.Projekt ProjektEntry in SortableProjekte)
                {
                DataWrapper.Instance.CreateAllForOneProjectToPrint(Phase, CollectionOfClassesToPrint, ProjektEntry,
                    ref FirstProjektInProjektOrt,
                    true, true, true, true, PrintThisSecurityGroup);
                }
            XAMLPrintoutDefinitions.PrintFileCards PrintHandler = new XAMLPrintoutDefinitions.PrintFileCards();
            String HeadLine = "Projektliste \"" + WordUpName + "\" sortiert \"" + GroupingInfo + "\"\r\n"
                              + Enum.GetName(typeof (Basics.DataSelection), Phase) + " Stand " +
                              DateTime.Now.ToString("ddd. dd.MMM yyyy HH:mm") + " (incl. Ideen)";

            PrintHandler.PrintSimpleFormattedArbeitsGruppenPersonenProjekte(CollectionOfClassesToPrint, OutputFileName,
                HeadLine);

            OutputFileName = System.IO.Path.Combine(DataWrapper.Instance.TargetDirectory + "\\ProjektListings\\Numeric",
                "Stand_" + DataWrapper.Instance.RuntimeEnvironmentShortText + "_"
                + Enum.GetName(typeof (Basics.DataSelection), Phase) + "_" + PrintThisSecurityGroup
                + "_" + GroupingInfo + "_OhnePlakate.pdf");
            CollectionOfClassesToPrint.Clear();
            foreach (DbEntities.dbserver3.wordup.rows.Projekt ProjektEntry in SortableProjekte)
                {
                DataWrapper.Instance.CreateAllForOneProjectToPrint(Phase, CollectionOfClassesToPrint, ProjektEntry,
                    ref FirstProjektInProjektOrt,
                    false, true, true, true, PrintThisSecurityGroup);
                }
            HeadLine = "Projektliste \"" + WordUpName + "\" sortiert \"" + GroupingInfo + "\"\r\n"
                       + Enum.GetName(typeof (Basics.DataSelection), Phase) + " Stand " +
                       DateTime.Now.ToString("ddd. dd.MMM yyyy HH:mm") + " (excl. Ideen)";

            PrintHandler.PrintSimpleFormattedArbeitsGruppenPersonenProjekte(CollectionOfClassesToPrint, OutputFileName,
                HeadLine);
            }
示例#7
0
文件: PrintOut.cs 项目: heinzsack/DEV
	    public void CreatePlakatListingsDependingOnAssignmentStatus(DataWrapper.SortOrder SortCriteria,
		    Basics.DataSelection SpecialPhase, String[] SecurityGroupParameter,
		    bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine,
		    String OutputFileName, String HeadLine, WSPlakatContentType wsPlakatContentType)
		    {
			DocumentPrintOut.ActuallOutputType = DocumentPrintOut.OutputType.RTFDocument;
			DocumentPrintOut PlakatWriter = new DocumentPrintOut
				(System.IO.Path.Combine(DataWrapper.Instance.TargetDirectory, OutputFileName),
					false);
				bool PageBreakRequested = false;
				PlakatWriter.WriteLine(DocumentPrintOut.ElementType.Heading1, HeadLine);
				foreach (Organisation Klasse in
						Data.DbServer3.WordUp.Organisationen.AktuelleKlassen.OrderBy(klasse => klasse.CodeName))
					{
					int NumberOfPlakateDerKlasse = Data.DbServer3.WordUp.WSPlakate
						.Count(whe => whe.Organisation == Klasse);
					int NumberOfAssignedPlakateDerKlasse = Data.DbServer3.WordUp.WSPlakate
						.Count(whe => whe.Organisation == Klasse
								&& whe.Projekt != null);
					int NumberOfUnAssignedPlakateDerKlasse = Data.DbServer3.WordUp.WSPlakate
						.Count(whe => whe.Organisation == Klasse
								&& whe.Projekt == null);
					switch (wsPlakatContentType)
						{
						case WSPlakatContentType.alle:
								break;
						case WSPlakatContentType.Zugeordnet:
								if (NumberOfAssignedPlakateDerKlasse == 0)
									continue;
							break;
						case WSPlakatContentType.nichtZugeordnet:
						if (NumberOfUnAssignedPlakateDerKlasse == 0)
							continue;
						break;
						}
				if (PageBreakRequested)
						PlakatWriter.InsertPageBreak();
					PageBreakRequested = false;
					IEnumerable<WSPlakat> PlakateAusKlasse = Klasse.WSPlakate;
					PlakatWriter.WriteLine(DocumentPrintOut.ElementType.Heading2, $"Plakate der Klasse {Klasse.CodeName} " +
						$"alle {NumberOfPlakateDerKlasse} nZug. {NumberOfUnAssignedPlakateDerKlasse} Zug. {NumberOfAssignedPlakateDerKlasse}");
					Termin connectedWSTermin = Data.DbServer3.WordUp.OrganisationenZuTerminen
							.Where(whe => whe.Organisation == Klasse).Select(sel => sel.Termin)
							.Where(whe => whe.TermineTypId == TermineTypen.WS
										|| whe.TermineTypId == TermineTypen.OeffWS).FirstOrDefault();
					List<String> Betreuer = new List<string>();
					foreach (PersonZuTermin personZuTermin in connectedWSTermin.PersonenZuTerminen)
						Betreuer.Add(personZuTermin.Person.VorName + " " + personZuTermin.Person.FamilienName);
					String BetreuerNamen = String.Join(", ", Betreuer);
					PlakatWriter.WriteLine(DocumentPrintOut.ElementType.ContentLevel1, $"Betreuer beim Workshop: {BetreuerNamen}");
					if (PlakateAusKlasse.Count() == 0)
						{
						PlakatWriter.WriteLine(DocumentPrintOut.ElementType.ContentLevel1, "Bisher keine Plakate erfasst");
						continue;
						}

					String OldPlakat = String.Empty;
					PageBreakRequested = true; //More than 0 Plakatlines available
					foreach (WSPlakat PlakatZeile in PlakateAusKlasse.OrderBy(plakat => plakat.ErfassungsId))
						{
						String projektNumber = String.Empty;
						switch (wsPlakatContentType)
							{
							case WSPlakatContentType.alle:
								break;
							case WSPlakatContentType.nichtZugeordnet:
								if (PlakatZeile.Projekt != null)
									continue;
								break;
							case WSPlakatContentType.Zugeordnet:
								if (PlakatZeile.Projekt == null)
									continue;
							projektNumber = PlakatZeile.Projekt.NumericProjektId + " - ";
							break;
							}

						if (OldPlakat != PlakatZeile.PlakatID)
							{
							OldPlakat = PlakatZeile.PlakatID;
							PlakatWriter.WriteLine(DocumentPrintOut.ElementType.Heading2, "Plakat # " + OldPlakat);
							}
						PlakatWriter.WriteLine(DocumentPrintOut.ElementType.ContentLevel1,
							$"- {projektNumber}" + PlakatZeile.LangBeschreibung);
						PlakatWriter.WriteLine(DocumentPrintOut.ElementType.ContentLevel2,
								$"  {PlakatZeile.Ort.Bezeichnung} - " +
										$"({PlakatZeile.OrtsHinweis})");
						}
					}

			PlakatWriter.Close();
			}
示例#8
0
        public DataCollection<Object> GetTypList(DataCollection<Object> Typen,
            Basics.DataSelection PhaseToUseWhenCreateTree)
            {
            List<Guid> TypGuidsToShow = null;
            List<Guid> OrteGuidsToShow = null;
            List<Guid> ProjekteGuidsToShow = null;

            CreateDataReductionListsToCreatePhasenAdaptedTrees(PhaseToUseWhenCreateTree,
                ref ProjekteGuidsToShow, ref OrteGuidsToShow, ref TypGuidsToShow);
            if (TypGuidsToShow == null)
                return null;
            foreach (DataRow TypenRow in WordUpBasics.ProjekteTyp.Values)
                {
                if (TypGuidsToShow != null)
                    if (!TypGuidsToShow.Contains((Guid) TypenRow["ID"]))
                        continue;
                Typ TypClassEntry = new Typ(TypenRow)
                    {
                    HeadLine = TypenRow["TypNameID"].ToString()
                    };
                Typen.Add(TypClassEntry);
                GetProjektList(TypClassEntry.Childrens, TypClassEntry, OrteGuidsToShow, ProjekteGuidsToShow);
                }
            return Typen;
            }
示例#9
0
文件: PrintOut.cs 项目: heinzsack/DEV
        public void CreateProjectListings(DataWrapper.SortOrder SortCriteria,
            Basics.DataSelection SpecialPhase = Basics.DataSelection.Error,
            String[] SecurityGroupParameter = null)
            {
            ShowProgressMessage("CreateCompleteProjectListNumericID as PDF in all Formats is active");

            List<Basics.DataSelection> AllPhasen;
            if (SpecialPhase != Basics.DataSelection.Error)
                AllPhasen = new List<Basics.DataSelection>()
                    {
                    SpecialPhase
                    };
            else
                AllPhasen = new List<Basics.DataSelection>()
                    {
                    Basics.DataSelection.Wuensche,
                    Basics.DataSelection.Planungen,
                    Basics.DataSelection.Projekte,
                    Basics.DataSelection.Realisierungen,
                    Basics.DataSelection.Fertig
                    };


            String[] SecurityGroups = null;
            String[] SecurityGroupsShort = null;
            GetActuallSecurityParameter(SecurityGroupParameter, out SecurityGroups, out SecurityGroupsShort);

            foreach (Basics.DataSelection Phase in AllPhasen)
                {
                IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> Projekte = null;
                switch (SortCriteria)
                    {
                        case DataWrapper.SortOrder.NumericProjektID:
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.NumericProjektId);
                            break;
                        case DataWrapper.SortOrder.ArbeitsGruppen:
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.Ort?.OrtsTeil?.AktuallArbeitsGruppe?.NameId);
                            break;
                    }

                int NumberOfRecords = Projekte.Count();
                if (NumberOfRecords == 0)
                    continue;
                foreach (String SecurityGroup in SecurityGroups)
                    {
                    switch (SortCriteria)
                        {
                            case DataWrapper.SortOrder.NumericProjektID:
                                CreateProjectListNumericID(Projekte, Phase, SecurityGroup, "Numeric");
                                break;
                            case DataWrapper.SortOrder.ArbeitsGruppen:
                                CreateProjectListOAP(Projekte, Phase, SecurityGroup, "AG");
                                break;
                        }
                    }
                }
            ShowProgressMessage("");
            }
示例#10
0
文件: PrintOut.cs 项目: heinzsack/DEV
 private Dictionary<String, Dictionary<String, String>> CreateProjectListOAP
     (IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> SortableProjekte, Basics.DataSelection Phase,
         String PrintThisSecurityGroup, String OutputFileName, String HeadLine,
         bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine)
     {
     Dictionary<String, Dictionary<String, String>> Result = new Dictionary<String, Dictionary<String, String>>();
     XAMLPrintoutDefinitions.PrintFileCards PrintHandler = new XAMLPrintoutDefinitions.PrintFileCards();
     List<Object> CollectionOfClassesToPrint = DataWrapper.Instance.CreateTreeForProjectListingsAG
         (Phase, SortableProjekte, WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine,
             true, PrintThisSecurityGroup);
     PrintHandler.PrintSimpleFormattedArbeitsGruppenPersonenProjekte(CollectionOfClassesToPrint,
         OutputFileName, HeadLine);
     return Result;
     }
示例#11
0
		public List<Object> CreateTreeForSpecialSortField(Basics.DataSelection Phase,
            IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> SortableProjekte,
            String ItemNameToBreakBefore,
            String SecurityGroup = "", bool WithOrWithoutPlakate = true, bool WithOrWithoutActivities = true,
            bool WithOrWithoutTermine = true, bool WithOrWithoutProjektUebersicht = true)
            {
            List<Object> CollectionOfClassesToPrint = new List<object>();
            String OldItemContent = String.Empty;
            bool FirstItemContent = true;
            String OldOrtsTeil = String.Empty;
            bool FirstOrtsTeilInGruppe = true;
            String OldProjektOrt = String.Empty;
            bool FirstProjektOrtInOrtsTeil = true;
            bool FirstProjektInProjektOrt = true;
            foreach (DbEntities.dbserver3.wordup.rows.Projekt ProjektEntry in SortableProjekte)
	            {
                if (ProjektEntry.ContentToToBreakBefore(ItemNameToBreakBefore) != OldItemContent)
                    {
                    OldItemContent = ProjektEntry.ContentToToBreakBefore(ItemNameToBreakBefore);
                    if ((ProjektEntry.Ort == null)
                        || (ProjektEntry.Ort?.OrtsTeil == null)
                        || (ProjektEntry.Ort?.OrtsTeil?.AktuallArbeitsGruppe == null))
                        {
                        //MessageBox.Show("OrteBezeichnung = \"" + ProjektRow["OrteBezeichnung"].ToString() +
                        //                 "\"\r\nOrteBeschreibung = \""
                        //                 + ProjektRow["OrteBeschreibung"].ToString() + "\"\r\nOrtsTeilID =\""
                        //                 + ProjektRow["OrtsTeilID"].ToString() + "\"\r\nAG Zuordnung fehlt");
                        continue;
                        }
                    String Beschreibung = ProjektEntry.Ort?.OrtsTeil?.AktuallArbeitsGruppe?.LangName;
                    if (FirstItemContent)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldItemContent, "Main")
                            {
                            PageBreakAllowedBefore = true,
                            AdditionalTopDistance = 10
                            });
                        FirstItemContent = false;
                        }
                    else
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldItemContent, "Main")
                            {
                            PageBreakAllowedBefore = true,
                            PageBreakBeforeRequested = true,
                            AdditionalTopDistance = 10
                            });
                    OldOrtsTeil = String.Empty;
                    FirstOrtsTeilInGruppe = true;
                    }
                if (ProjektEntry.Ort?.OrtsTeil?.NameId != OldOrtsTeil)
                    {
                    OldOrtsTeil = ProjektEntry.Ort?.OrtsTeil?.NameId;
                    if (FirstOrtsTeilInGruppe)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldOrtsTeil, "Sub")
                            {
                            AdditionalTopDistance = 10
                            });
                        FirstOrtsTeilInGruppe = false;
                        }
                    else
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldOrtsTeil, "Sub")
                            {
                            PageBreakAllowedBefore = true,
                            PageBreakBeforeRequested = true,
                            AdditionalTopDistance = 10
                            });
                        }
                    FirstProjektInProjektOrt = true;
                    }

                try
                    {
                    CreateAllForOneProjectToPrint(Phase, CollectionOfClassesToPrint, ProjektEntry, ref FirstProjektInProjektOrt,
                        WithOrWithoutPlakate, WithOrWithoutActivities,
                        WithOrWithoutTermine, WithOrWithoutProjektUebersicht, SecurityGroup);
                    }
                catch (Exception Excp)
                    {
                    MessageBox.Show("Fehler bei ProjektID = \"" + ProjektEntry.Id.ToString() + "\"\r\n" +
                                    Excp.ToString());
                    }
                }

            return CollectionOfClassesToPrint;
            }
示例#12
0
		private void CreatePrintout(BitmapSource Source, String SchulName, Basics.ShowDatenTyp DatenTyp)
			{
			String TargetDirectory = DataWrapper.Instance.FileLocationsForMapReportPictures;
			switch (GraphicSizeToCreate)
				{
				case MapBasics.GraphicSize.A2:
				case MapBasics.GraphicSize.A3:
					TargetDirectory = TargetDirectory + $"\\{GraphicSizeToCreate.ToString()}";
					break;
				default:
					break;
				}

			if (Directory.Exists(TargetDirectory) == false)
				Directory.CreateDirectory(TargetDirectory);
			String HeadLine = String.Empty;
			String FileName = String.Empty;
			//DrawingVisual DrawingBoard = new DrawingVisual();
			//DrawingContext BoardContext = DrawingBoard.RenderOpen();
			//Rect DrawingRect = new Rect(new Point(0, 0), new Size((Source.PixelWidth * 96) / 600, (Source.PixelHeight * 96) / 600));
			//BoardContext.DrawImage(Source, DrawingRect);
			switch (DatenTyp)
				{
				case Basics.ShowDatenTyp.Schulen:
					HeadLine = "Schulen im aktuellen WordUpProcess " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement("LiesingGesamt_AlleSchulen");
					break;
				case Basics.ShowDatenTyp.Schueler:
					HeadLine = "VertreterInnen (wohnhaft in Wien) aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Schueler");
					break;
				case Basics.ShowDatenTyp.Wuensche:
					HeadLine = "Vorschläge aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Wuensche");
					break;
				case Basics.ShowDatenTyp.Planung:
					HeadLine = "Planung (= mit Wertigkeit > 0 versehene Vorschläge) aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Planungen");
					break;
				case Basics.ShowDatenTyp.Projekt:
					HeadLine = "Projekte (= mit Wertigkeit > 0 und Geld versehene Vorschläge) aus " +
							   SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Projekte");
					break;
				case Basics.ShowDatenTyp.Realisierungen:
					HeadLine = "Realisierungen (= Projekte, die schon realisrt werden) aus " +
							   SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Realisierungen");
					break;
				case Basics.ShowDatenTyp.Combined:
					HeadLine = "VertreterInnen, Vorschläge, Planung und Realisierungen aus " +
							   SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Kombiniert");
					break;
				case Basics.ShowDatenTyp.CombinedButNoPupil:
					HeadLine = "Vorschläge, Planung und Realisierungen aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_KombiniertUndKeineSchueler");
					break;
				case Basics.ShowDatenTyp.ProjekteWithMissingPictures:
					HeadLine = "Planung mit fehlenden Bildern aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_ProjekteMitFehlendenBildern");
					break;
				case Basics.ShowDatenTyp.OrteWithMissingPictures:
					HeadLine = "Orte mit fehlenden Bildern aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_OrteMitFehlendenBildern");
					break;
				case Basics.ShowDatenTyp.DefinedOrteWherePicturesShouldProduced:
					HeadLine = "Orte , die noch gefilmt oder fotogrfiert werden sollen " +
							   SchulName.Replace("_", " ");
					FileName =
						WMB.Basics.ConvertToCorrectFileNameElement(SchulName +
																   "_OrteDefinierterweiseFehlendenBildern");
					break;

				case Basics.ShowDatenTyp.OrteWithMoreProjects:
					HeadLine = "Orte mit mehr als 3 Projekten";
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_OrteMitMehrerenProjekten");
					break;
				case Basics.ShowDatenTyp.Typen:
					HeadLine = "WunschTypen aus " + SchulName.Replace("_", " ");
					FileName = WMB.Basics.ConvertToCorrectFileNameElement(SchulName + "_Typen");
					break;
				}
			//BoardContext.Close ();
			//PrintableBitmap.Render (DrawingBoard);

			//PrintableBitmap.Freeze ();
			MemoryStream JpegStream = WMB.Basics.ConvertBitmapSourceToJPegStream(Source);

			String PictureFileName = System.IO.Path.Combine
				(TargetDirectory, FileName + ".jpg");
			if (File.Exists(PictureFileName))
				WMB.Basics.SecureFileDelete(PictureFileName);
			FileStream TargetFileStream = new FileStream(PictureFileName, FileMode.Create);
			WMB.Basics.CopyStream(JpegStream, TargetFileStream);
			JpegStream.Close();
			TargetFileStream.Close();
			}
示例#13
0
		public List<Marker> DoRun(Basics.ShowDatenTyp TypeToStart)
			{
			if (SelectedSchulListe == null)
				return null;
			//if (TypeToStart == Basics.ShowDatenTyp.Error)
			//	return;
			MapData AdditionalMapData = new MapData();
			List<Marker> Result = null;
            switch (TypeToStart)
				{
				case Basics.ShowDatenTyp.Schueler:
					Result = CreateMarkerForSchueler
						(SelectedSchulListe.Schulen, LogicalAreaType.Schule);
					break;
				case Basics.ShowDatenTyp.Wuensche:
					Result = CreateMarkerForProjektPhasenDaten
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Wunsch);
					break;
				case Basics.ShowDatenTyp.Planung:
					Result = CreateMarkerForProjektPhasenDaten
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Planung);
					break;
				case Basics.ShowDatenTyp.Projekt:
					Result = CreateMarkerForProjektPhasenDaten
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Projekt);
					break;
				case Basics.ShowDatenTyp.Realisierungen:
					Result = CreateMarkerForProjektPhasenDaten
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Realisierung);
					break;
				case Basics.ShowDatenTyp.Combined:
					Result = CreateMarkerForCombined
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Combined);
					break;
				case Basics.ShowDatenTyp.CombinedButNoPupil:
					Result = CreateMarkerForCombined
						(SelectedSchulListe.Schulen,
						LogicalAreaType.CombinedNoPupil);
					break;
				case Basics.ShowDatenTyp.Schulen:
					Result = CreateMarkerForSchulen
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Schule);
					break;
				case Basics.ShowDatenTyp.ProjekteWithMissingPictures:
					Result = 
						CreateMarkerForProjekteWithMissingPictures
						(SelectedSchulListe.Schulen,
							LogicalAreaType.MissingProjektPicture);
					break;
				case Basics.ShowDatenTyp.OrteWithMissingPictures:
					Result = CreateMarkerForOrteWithMissingPictures
						(SelectedSchulListe.Schulen,
						LogicalAreaType.MissingOrtPicture);
					break;
				case Basics.ShowDatenTyp.DefinedOrteWherePicturesShouldProduced:
					Result = 
						CreateMarkerForDefinedOrteWherePicturesShouldProduced
						(SelectedSchulListe.Schulen,
							LogicalAreaType.DefinedProjectsForRSB);
					break;
				case Basics.ShowDatenTyp.Typen:
					Result = CreateMarkerForTypen
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Typen);
					break;
				case Basics.ShowDatenTyp.OrteWithMoreProjects:
					Result = CreateMarkerForOrteWithMoreProjects
						(SelectedSchulListe.Schulen,
						LogicalAreaType.Text);
					break;
				case Basics.ShowDatenTyp.Error:
					return null;
					break;
				}
			return Result;
			}
示例#14
0
 public List<Guid> GetPhasenRichtigeProjektIDs(Basics.DataSelection RequestedPhase)
     {
     List<Guid> Result = new List<Guid>();
     DataTable IDs = GetPhasenRichtigeProjektDaten(RequestedPhase, SortOrder.NotDefined, "ID");
     foreach (DataRow IDRow in IDs.Rows)
         Result.Add((Guid) IDRow["ID"]);
     return Result;
     }
示例#15
0
        public DataTable GetPhasenRichtigeProjektDaten(Basics.DataSelection RequestedPhase,
            SortOrder RequestedSortOrder, String ItemsToSelect = "", String AdditionalSelector = "",
            String WordUpIDToUse = "")
            {
            if (String.IsNullOrEmpty(ItemsToSelect))
                ItemsToSelect = ProjektUebersichtProjektSelectionItems;
            if (String.IsNullOrEmpty(WordUpIDToUse))
                WordUpIDToUse = WordUpID;
            String OrderBy = String.Empty;
            switch (RequestedSortOrder)
                {
                    case SortOrder.Verantwortlich:
                        OrderBy = " Zustaendig, " + ActuallProjektUebersichtSortOrder;
                        break;
                    case SortOrder.ArbeitsGruppen:
                    case SortOrder.ArbeitsGruppenGetrennt:
                        OrderBy = ActuallProjektUebersichtSortOrder;
                        break;
                    case SortOrder.Typen:
                        OrderBy = " ProjektTyp, " + ActuallProjektUebersichtSortOrder;
                        break;
                    case SortOrder.NumericProjektID:
                        OrderBy = " NumericProjektID, " + ActuallProjektUebersichtSortOrder;
                        break;
                }
            DataTable SelectionProjektUebersicht = null;
            switch (RequestedPhase)
                {
				case Basics.DataSelection.Wuensche:
				case Basics.DataSelection.Ideen:
					SelectionProjektUebersicht = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                            ("Select " + ItemsToSelect + " from ProjektUebersicht where WordUpRootID = '"
                             + WordUpIDToUse + "' " + AdditionalSelector + " order by " + OrderBy).Tables[
                                 "ProjektUebersicht"];
                        break;
                    case Basics.DataSelection.Planungen:
                        SelectionProjektUebersicht = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                            ("Select " + ItemsToSelect + " from ProjektUebersicht where WordUpRootID = '"
                             + WordUpIDToUse + "' and Wertigkeit > 0 " + AdditionalSelector + " order by " + OrderBy)
                            .Tables["ProjektUebersicht"];
                        break;
                    case Basics.DataSelection.Projekte:
                        SelectionProjektUebersicht = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                            ("Select " + ItemsToSelect + " from ProjektUebersicht where WordUpRootID = '"
                             + WordUpID + "' and ID in ("
                             + "SELECT distinct (ProjektID) FROM Aktivitaeten where WordUpRootID = '" + WordUpIDToUse +
                             "' "
                             + " and   (AktivitaetsTypenID = 'D208400A-2A5B-4384-86D6-F95618682BF9')) "
                             + AdditionalSelector + " order by " + OrderBy).Tables["ProjektUebersicht"];
                        break;
                    case Basics.DataSelection.Realisierungen:
                        SelectionProjektUebersicht = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                            ("Select " + ItemsToSelect + " from ProjektUebersicht where WordUpRootID = '"
                             + WordUpID + "' and ID in ("
                             + "SELECT distinct (ProjektID) FROM Aktivitaeten where WordUpRootID = '" + WordUpIDToUse +
                             "' "
                             + " and   (AktivitaetsTypenID = 'EF1054D3-A3FD-4B98-A4AE-AA03DEB216EC')) "
                             + AdditionalSelector + " order by " + OrderBy).Tables["ProjektUebersicht"];
                        break;
                    case Basics.DataSelection.Fertig:
                        SelectionProjektUebersicht = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                            ("Select " + ItemsToSelect + " from ProjektUebersicht where WordUpRootID = '"
                             + WordUpID + "' and ID in ("
                             + "SELECT distinct (ProjektID) FROM Aktivitaeten where WordUpRootID = '" + WordUpIDToUse +
                             "' "
                             + " and   (AktivitaetsTypenID = '060B72A5-8B39-4CC3-B5D0-CD09FD233DE1')) "
                             + AdditionalSelector + " order by " + OrderBy).Tables["ProjektUebersicht"];
                        break;
                }
            return SelectionProjektUebersicht;
            }
示例#16
0
        public Dictionary<string, List<DataRow>> GetSortedProjektSelection(SortOrder RequestedSortOrder,
            Basics.DataSelection RequestedPhase, String AddOnSelection = "")
            {
			DbEntities.dbserver3.wordup.rows.ProjektUebersicht[] SelectionProjektUebersicht = Data.DbServer3.WordUp
				.ProjektUebersichten
				.Find_PhasenRelatedProjektUebersichten(RequestedPhase.ToString(), RequestedSortOrder.ToString());


			//DataTable SelectionProjektUebersicht = GetPhasenRichtigeProjektDaten
			//             (RequestedPhase, RequestedSortOrder, ProjektUebersichtProjektSelectionItems, AddOnSelection);
			String OldSortContent = String.Empty;
            List<DataRow> ActualList = null;
            Dictionary<string, List<DataRow>> Result = new Dictionary<string, List<DataRow>>();
            foreach (DataRow SortedRow in SelectionProjektUebersicht)
                {
                String SortContent = String.Empty;
                switch (RequestedSortOrder)
                    {
                        case SortOrder.Verantwortlich:
                            SortContent = SortedRow["Zustaendig"].ToString();
                            break;
                        case SortOrder.ArbeitsGruppen:
                        case SortOrder.ArbeitsGruppenGetrennt:
                            SortContent = SortedRow["OrtsTeil"].ToString() + " - " +
                                          SortedRow["ArbeitsGruppenNameID"].ToString();
                            break;
                        case SortOrder.Typen:
                            SortContent = SortedRow["ProjektTyp"].ToString();
                            break;
                        case SortOrder.NumericProjektID:
                            {
                            SortContent = SortedRow["NumericProjektID"].ToString() + " - " +
                                          GetOrteBezeichnung(SortedRow)
                                          + " - " + SortedRow["ProjektBeschreibung"].ToString();
                            }
                            break;
                    }
				if (String.IsNullOrEmpty(SortContent))
					SortContent = "Undefined";
				if (!Result.Keys.Contains(SortContent))
					Result[SortContent] = new List<DataRow>();
				Result[SortContent].Add(SortedRow);
                }
            return Result;
            }
示例#17
0
        public void CreateAllForOneProjectToPrint(Basics.DataSelection Phase, List<Object> CollectionOfClassesToPrint,
            DbEntities.dbserver3.wordup.rows.Projekt ProjektToUse, ref bool FirstProjekt,
            bool WithOrWithoutPlakate = false, bool WithOrWithoutActivities = false,
            bool WithOrWithoutTermine = false, bool WithOrWithoutProjektUebersicht = false,
            String SecurityGroup = "ProfisFull")
	        {
	        ProjektPrintRoot RootProjektObject = null;
	        switch (Phase)
		        {
				case Basics.DataSelection.Wuensche:
					RootProjektObject = new WunschPrint(ProjektToUse);
					break;
				case Basics.DataSelection.Planungen:
					RootProjektObject = new PlanungPrint(ProjektToUse);
					break;
				case Basics.DataSelection.Projekte:
					RootProjektObject = new ProjektPrint(ProjektToUse);
					break;
				case Basics.DataSelection.Realisierungen:
					RootProjektObject = new RealisierungPrint(ProjektToUse);
					break;
				case Basics.DataSelection.Fertig:
					RootProjektObject = new FertigPrint(ProjektToUse);
					break;
				}

			RootProjektObject.MaximalWMUValue = Data.DbServer3.WordUp.Projekte.WMUDistribution.Keys.Max();
			RootProjektObject.MaximalWSPLakateValue = Data.DbServer3.WordUp.Projekte.WSPlakateDistribution.Keys.Max();
			RootProjektObject.MaximalWertigkeitValue = Data.DbServer3.WordUp.Projekte.WertigkeitValueDistribution.Keys.Max();

			if (FirstProjekt)
                {
                FirstProjekt = false;
                }
            else
                {
				RootProjektObject.PageBreakAllowedBefore = true;
                }
			RootProjektObject.BorderPadding = new Thickness(40, 10, 0, 0);
            CollectionOfClassesToPrint.Add(RootProjektObject);
            if (WithOrWithoutActivities)
                {
                bool FirstAktivitaet = true;
                foreach (Aktivitaet AktivitaetenEntry in Data.DbServer3.WordUp.Aktivitaeten.Collection
                    .Where(Entry => Entry.ProjektId == ProjektToUse.Id).OrderByDescending(ord => ord.CreationDateTime))
                    {
                    if (FirstAktivitaet)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint("Bemerkungen:", "SubSubSub"));
                        FirstAktivitaet = false;
                        }
                    AktivitaetenPrint RootAktivitaetenPrint = new AktivitaetenPrint(AktivitaetenEntry);
					RootProjektObject.Aktivitaeten.Add(RootAktivitaetenPrint);
                    RootAktivitaetenPrint.BorderPadding = new Thickness(80, 0, 0, 0);
                    CollectionOfClassesToPrint.Add(RootAktivitaetenPrint);
                    }
                }
            if (WithOrWithoutPlakate)
                {
                bool FirstIdee = true;
                foreach (WSPlakat PlakatEntry in Data.DbServer3.WordUp.WSPlakate.Collection
                    .Where(Entry => Entry.ProjektId == ProjektToUse.Id))
                    {
                    if (FirstIdee)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint("Ideen", "SubSubSub"));
                        FirstIdee = false;
                        }
                    IdeePrint RootIdeePrint = new IdeePrint(PlakatEntry)
	                    {
						ShowWMUDetail = true
						};
					RootProjektObject.Ideen.Add(RootIdeePrint);
                    RootIdeePrint.BorderPadding = new Thickness(80, 0, 0, 0);
                    CollectionOfClassesToPrint.Add(RootIdeePrint);
                    }
                }
            if (WithOrWithoutTermine)
                {
                bool FirstTermin = true;
                foreach (
                    Termin TerminEntry in Data.DbServer3.WordUp.Termine.Find_ForSpecificProjektID(ProjektToUse.Id))
                    {
                    if (FirstTermin)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint("Termine, die eine Verbindung mit dem Projekt "
                                                                         +
																		 RootProjektObject.NumericProjektID.Substring(3) +
                                                                         " haben", "SubSubSub"));
                        FirstTermin = false;
                        }
                    AddOnTerminPrint RootTerminPrint = new AddOnTerminPrint(TerminEntry);
					RootProjektObject.Termine.Add(RootTerminPrint);
                    RootTerminPrint.BorderPadding = new Thickness(80, 0, 0, 0);
                    CollectionOfClassesToPrint.Add(RootTerminPrint);
                    }
                }
            }
示例#18
0
        public List<Object> CreateTreeForArbeitsGruppenProjekte(Basics.DataSelection Phase,
            String ArbeitsGruppenNameIDSelectionCriteria, IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> SortableProjekte, 
			String SecurityGroup,
            bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine)
            {

            List<Object> CollectionOfClassesToPrint = new List<object>();
            String OldAGNameID = String.Empty;
            bool FirstAGNameID = true;
            String OldOrtsTeil = String.Empty;
            bool FirstOrtsTeilInGruppe = true;
            String OldProjektOrt = String.Empty;
            bool FirstProjektOrtInOrtsTeil = true;
            bool FirstProjektInProjektOrt = true;
            foreach (DbEntities.dbserver3.wordup.rows.Projekt ProjektEntry in SortableProjekte)
                {
                if (ProjektEntry.ContentToToBreakBefore("ArbeitsGruppenNameID") != OldAGNameID)
                    {
                    OldAGNameID = ProjektEntry.ContentToToBreakBefore("ArbeitsGruppenNameID");
                    String Beschreibung = ProjektEntry.Ort?.OrtsTeil?.AktuallArbeitsGruppe?.LangName;
                    if (FirstAGNameID)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldAGNameID + " " + Beschreibung, "Main")
                            {
                            PageBreakAllowedBefore = true,
                            AdditionalTopDistance = 10
                            });
                        FirstAGNameID = false;
                        }
                    else
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldAGNameID + " " + Beschreibung, "Main")
                            {
                            PageBreakAllowedBefore = true,
                            PageBreakBeforeRequested = true,
                            AdditionalTopDistance = 10
                            });
                    OldOrtsTeil = String.Empty;
                    FirstOrtsTeilInGruppe = true;
                    }
                if (ProjektEntry.Ort?.OrtsTeil?.NameId != OldOrtsTeil)
                    {
                    OldOrtsTeil = ProjektEntry.Ort?.OrtsTeil?.NameId;
                    if (FirstOrtsTeilInGruppe)
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldOrtsTeil, "Sub")
                            {AdditionalTopDistance = 10});
                        FirstOrtsTeilInGruppe = false;
                        }
                    else
                        {
                        CollectionOfClassesToPrint.Add(new HeadLinePrint(OldOrtsTeil, "Sub")
                            {PageBreakAllowedBefore = true, PageBreakBeforeRequested = true, AdditionalTopDistance = 10});
                        }
                    FirstProjektInProjektOrt = true;
                    }

                CreateAllForOneProjectToPrint(Phase, CollectionOfClassesToPrint, ProjektEntry, ref FirstProjektInProjektOrt,
                    WithOrWithoutPlakate, WithOrWithoutActivities,
                    WithOrWithoutTermine, true, SecurityGroup);
                }

            return CollectionOfClassesToPrint;
            }
示例#19
0
文件: PrintOut.cs 项目: heinzsack/DEV
        public void CreateProjectListings(DataWrapper.SortOrder SortCriteria,
            Basics.DataSelection SpecialPhase, String[] SecurityGroupParameter,
            bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine,
            String OutputFileName, String HeadLine)
            {
            ShowProgressMessage("CreateCompleteProjectListNumericID as PDF in all Formats is active");

            List<Basics.DataSelection> AllPhasen;
            if (SpecialPhase != Basics.DataSelection.Error)
                AllPhasen = new List<Basics.DataSelection>()
                    {
                    SpecialPhase
                    };
            else
                AllPhasen = new List<Basics.DataSelection>()
                    {
                    Basics.DataSelection.Wuensche,
                    Basics.DataSelection.Planungen,
                    Basics.DataSelection.Projekte,
                    Basics.DataSelection.Realisierungen,
                    Basics.DataSelection.Fertig
                    };


            String[] SecurityGroups = null;
            String[] SecurityGroupsShort = null;
            GetActuallSecurityParameter(SecurityGroupParameter, out SecurityGroups, out SecurityGroupsShort);

            foreach (Basics.DataSelection Phase in AllPhasen)
                {
                IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> Projekte = null;

                switch (SortCriteria)
                    {
                        case DataWrapper.SortOrder.Verantwortlich:
                            {
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.Zustaendigkeit?.NameId)
									.ThenBy(Entry => Entry.Ort?.OrtsTeil?.NameId)
                                    .ThenBy(Entry => Entry.Ort?.Bezeichnung)
									.ThenBy(Entry => Entry.NumericProjektId);
                            break;
                            }
                        case DataWrapper.SortOrder.Typen:
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.Typ?.TypNameId)
									.ThenBy(Entry => Entry.Ort?.OrtsTeil?.NameId)
									.ThenBy(Entry => Entry.Ort?.Bezeichnung)
									.ThenBy(Entry => Entry.NumericProjektId);
                            break;
                        case DataWrapper.SortOrder.NumericProjektID:
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.NumericProjektId);
                            break;
                        case DataWrapper.SortOrder.ArbeitsGruppen:
                        case DataWrapper.SortOrder.ArbeitsGruppenGetrennt:
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.Ort?.OrtsTeil?.AktuallArbeitsGruppe?.NameId)
									.ThenBy(Entry => Entry.Ort?.OrtsTeil?.NameId)
									.ThenBy(Entry => Entry.Ort?.Bezeichnung)
									.ThenBy(Entry => Entry.NumericProjektId);
                            break;
                        default:
                            Projekte = Data.DbServer3.WordUp.Projekte.Find_PhasenCorrectProjekte(Phase.ToString())
                                .OrderBy(Entry => Entry.Beschreibung);
                            break;
                    }

                int NumberOfRecords = Projekte.Count();
                if (NumberOfRecords == 0)
                    continue;
                if (SecurityGroups.Length == 0)
                    {
                    SecurityGroups = new String[] {""};
                    }
                foreach (String SecurityGroup in SecurityGroups)
                    {
                    switch (SortCriteria)
                        {
                            case DataWrapper.SortOrder.Verantwortlich:
                                CreateProjectListSpecialFieldOAP(Projekte, Phase, "Zustaendig",
                                    SecurityGroup, OutputFileName, HeadLine,
                                    WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine);
                                break;
                            case DataWrapper.SortOrder.Typen:
                                CreateProjectListSpecialFieldOAP(Projekte, Phase, "ProjektTyp",
                                    SecurityGroup, OutputFileName, HeadLine,
                                    WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine);
                                break;
                            case DataWrapper.SortOrder.NumericProjektID:
                                CreateProjectListNumericID(Projekte, Phase, SecurityGroup, OutputFileName, HeadLine,
                                    WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine);
                                break;
                            case DataWrapper.SortOrder.ArbeitsGruppen:
                                CreateProjectListOAP(Projekte, Phase, SecurityGroup, OutputFileName, HeadLine,
                                    WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine);
                                break;
                            case DataWrapper.SortOrder.ArbeitsGruppenGetrennt:
                                CreateProjectListOAPGetrennt(Projekte, Phase, SecurityGroup, OutputFileName, HeadLine,
                                    WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine);
                                break;
                            case DataWrapper.SortOrder.NotDefined:
                                CreateProjectListSpecialFieldOAP(Projekte, Phase, "ProjektTyp",
                                    SecurityGroup, OutputFileName, HeadLine,
                                    WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine);
                                break;
                        }
                    }
                }
            ShowProgressMessage("");
            }
		public void ProjektListeNumericProjektIDSelection(Basics.DataSelection RequestedPhaseParameter)
			{
			RequestedSortOrder = DataWrapper.SortOrder.NumericProjektID;
			RequestedPhase = RequestedPhaseParameter;
			HeadLine = "Alle " + WordUp23.Basics.Instance.WordUpName + " Projekte geordnet nach Arbeitsgruppen und Ortsteilen";
			CreateSortedData();
			}
示例#21
0
文件: PrintOut.cs 项目: heinzsack/DEV
 private Dictionary<String, Dictionary<String, String>> CreateProjectListNumericID
     (IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> SortableProjekte, Basics.DataSelection Phase,
         String PrintThisSecurityGroup, String OutputFileName, String HeadLine,
         bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine)
     {
     Dictionary<String, Dictionary<String, String>> Result = new Dictionary<String, Dictionary<String, String>>();
     List<Object> CollectionOfClassesToPrint = new List<object>();
     bool FirstProjektInProjektOrt = true;
     foreach (DbEntities.dbserver3.wordup.rows.Projekt ProjektEntry in SortableProjekte)
         {
         DataWrapper.Instance.CreateAllForOneProjectToPrint(Phase, CollectionOfClassesToPrint,
             ProjektEntry, ref FirstProjektInProjektOrt,
             WithOrWithoutPlakate, WithOrWithoutActivities, WithOrWithoutTermine,
             true, PrintThisSecurityGroup);
         }
     XAMLPrintoutDefinitions.PrintFileCards PrintHandler = new XAMLPrintoutDefinitions.PrintFileCards();
     PrintHandler.PrintSimpleFormattedArbeitsGruppenPersonenProjekte(CollectionOfClassesToPrint,
         OutputFileName, HeadLine);
     return Result;
     }
示例#22
0
/*
#region handle DataEntryStatus


		public DataTable FillDataEntryStatus ()
			{
			DataTable DataEntryStatus = CreateDataEntryStatusTable ();
			int SchulLevelConter = 100;
			foreach (DataRow SchulRow in WordUpBasics.WordUpWCFAccess.GetCommonDataSet
				($"Select * from Organisationen where OrganisationenTypID = "
                + $"'{WordUp23.WordUpResources.OrganisationenTypen.Schule}' and ID in"
				 + " (select OrganisationenID from OrganisationenZuWordUpID where WordUpID = '" + WordUpID + "') "
				 + "order by Beschreibung").Tables["Organisationen"].Rows)
				{
				String LocalSchulDatenRoot = Path.Combine (WordUpBasics.SchuDatenRootPath, SchulRow["MaterialRoot"].ToString ());
				DataRow SchulDataRow = DataEntryStatus.NewRow ();
				SchulDataRow ["ID"] = System.Guid.NewGuid ().ToString ();
				SchulDataRow["OrgOrder"] = Convert.ToString(++SchulLevelConter).Substring(1, 2);
				SchulDataRow["Typ"] = TypCacheInstance.GetTyp((Guid)SchulRow ["OrganisationenTypID"]).TypNameID;
				SchulDataRow["CodeName"] = SchulRow["Beschreibung"].ToString();
				SchulDataRow["Root"] = SchulRow["MaterialRoot"].ToString();
				SchulDataRow["Videos"] = Convert.ToString(WMB.Basics.GetFilesFromDirectory
					                      (Path.Combine (LocalSchulDatenRoot, "Videos"), new String [] {"*.M2T"}, -1).Count);
				SchulDataRow["Bilder"] = Convert.ToString(WMB.Basics.GetFilesFromDirectory
										  (Path.Combine(LocalSchulDatenRoot, "Fotos"), new String[] { "*.JPG" }, -1).Count);
				DataEntryStatus.Rows.Add(SchulDataRow);
				FillKlassenEntryStatus (SchulRow, SchulDataRow["OrgOrder"].ToString (), DataEntryStatus);
				}
			return DataEntryStatus;
			}

		private bool FillKlassenEntryStatus (DataRow SchulRow, String OrgOrder, DataTable DataEntryStatus)
			{
			String SchulID = SchulRow ["ID"].ToString ();
			int KlassenLevelConter = 100;
			foreach (DataRow KlassenRow in WordUpBasics.WordUpWCFAccess.GetCommonDataSet
				("Select * from Organisationen where ParentOrganisationsID = '" + SchulID + "' and ID in"
				 + " (select OrganisationenID from OrganisationenZuWordUpID where WordUpID = '" + WordUpID + "') "
				 + "order by Beschreibung").Tables ["Organisationen"].Rows)
				{
				String LocalSchulDatenRoot = Path.Combine (WordUpBasics.SchuDatenRootPath,
					SchulRow["MaterialRoot"].ToString());
				String KlassenOrganisationsID = KlassenRow ["ID"].ToString ();
				DataRow KlassenDataRow = DataEntryStatus.NewRow();
				DateTime Von = Convert.ToDateTime(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
					("select Von from FullOrganisationenZuTermine where OrganisationenID = '" + KlassenOrganisationsID + "'")
					.Tables["FullOrganisationenZuTermine"].Rows [0] [0]);
				KlassenDataRow["ID"] = System.Guid.NewGuid().ToString();
				KlassenDataRow["OrgOrder"] = OrgOrder + Convert.ToString(++KlassenLevelConter).Substring(1, 2);
				KlassenDataRow["Typ"] = KlassenRow["Typ"].ToString();
				KlassenDataRow["CodeName"] = KlassenRow["CodeName"].ToString();
				KlassenDataRow["Datum"] = Von;

				String KlassenName = (KlassenRow ["CodeName"].ToString () + "      ").Substring (4, 2);
				if (KlassenName.Substring (0, 1) == "4")
					{
					KlassenDataRow["Kopien"] = Convert.ToString(WMB.Basics.GetFilesFromDirectory
						                   (Path.Combine (LocalSchulDatenRoot, KlassenName + "\\WSPersonen"), new String [] {"*.JPG"},
						                                             -1).Count);
					KlassenDataRow ["Vorst"] = Convert.ToString(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
											("select count (*) from Personen where ID in "
												+ "(select PersonenID from PersonenZuWordUpID where WordUpID = '" + WordUpID + "') "
												+ "and PersonenTypID = 'A064EAE5-F18E-4A97-8733-0E2DE9E30815' "
												+ "and OrganisationenID = '"
													+ KlassenOrganisationsID + "'").Tables["Personen"].Rows[0][0]);
					KlassenDataRow["Stv"] = Convert.ToString(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
											("select count (*) from Personen where ID in "
												+ "(select PersonenID from PersonenZuWordUpID where WordUpID = '" + WordUpID + "') "
												+ "and PersonenTypID = '4E50F4B3-B1FC-4918-8122-DA4B11EB9C28' "
												+ "and OrganisationenID = '"
													+ KlassenOrganisationsID + "'").Tables["Personen"].Rows[0][0]);
					KlassenDataRow["Rat"] = Convert.ToString(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
											("select count (*) from Personen where ID in "
												+ "(select PersonenID from PersonenZuWordUpID where WordUpID = '" + WordUpID + "') "
												+ "and PersonenTypID = '0B747DCC-59FD-4D51-83C9-D408D722C455' "
												+ "and OrganisationenID = '"
													+ KlassenOrganisationsID + "'").Tables["Personen"].Rows[0][0]);
					KlassenDataRow["PlakatFotos"] = Convert.ToString(WMB.Basics.GetFilesFromDirectory
											 (Path.Combine(LocalSchulDatenRoot, KlassenName + "\\WSPlakate"), new String[] { "*.JPG" },
						                                             -1).Count);
					KlassenDataRow["PlakateErf"] = Convert.ToString(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
											("Select count (distinct (Substring(ErfassungsID, 1, 2))) from WSPlakate where OrganisationenID = '"
											+ KlassenOrganisationsID + "'").Tables["WSPlakate"].Rows[0][0]);
					KlassenDataRow["Zeilen"] = Convert.ToString(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
											("Select count (*) from WSPlakate where OrganisationenID = '"
											+ KlassenOrganisationsID + "'").Tables["WSPlakate"].Rows[0][0]);
					KlassenDataRow["NichtZugeordnet"] = Convert.ToString(WordUpBasics.WordUpWCFAccess.GetCommonDataSet
											("Select count (*) from WSPlakate where OrganisationenID = '"
											+ KlassenOrganisationsID + "' and ProjektID is NULL").Tables["WSPlakate"].Rows[0][0]);

					}
				DataEntryStatus.Rows.Add(KlassenDataRow);

				}
			return true;
			}

		private DataTable CreateDataEntryStatusTable ()
			{
			DataTable DataEntryStatus = new DataTable("DataEntryStatus");

			DataEntryStatus.Columns.Add("ID", typeof(System.Guid));
			DataEntryStatus.Columns.Add("OrgOrder", typeof(String));
			DataEntryStatus.Columns.Add("Typ", typeof(String));
			DataEntryStatus.Columns.Add("Datum", typeof(DateTime));
			DataEntryStatus.Columns.Add("CodeName", typeof(String));
			DataEntryStatus.Columns.Add("Root", typeof(String));
			DataEntryStatus.Columns.Add("Videos", typeof(String));
			DataEntryStatus.Columns.Add("Bilder", typeof(String));
			DataEntryStatus.Columns.Add("Kopien", typeof(String));
			DataEntryStatus.Columns.Add("Vorst", typeof(String));
			DataEntryStatus.Columns.Add("Stv", typeof(String));
			DataEntryStatus.Columns.Add("Rat", typeof(String));
			DataEntryStatus.Columns.Add("PlakatFotos", typeof(String));
			DataEntryStatus.Columns.Add("PlakateErf", typeof(String));
			DataEntryStatus.Columns.Add("Zeilen", typeof(String));
			DataEntryStatus.Columns.Add("NichtZugeordnet", typeof(String));

			return DataEntryStatus;
			}

#endregion
*/

        #region Manipulate Chart Data

        public List<ChartBase> CreateChartBase(SortOrder RequestedSortOrder = SortOrder.ArbeitsGruppen,
            Basics.DataSelection ExtWordUpPhase = Basics.DataSelection.Error)
            {
            if (ExtWordUpPhase == Basics.DataSelection.Error)
                {
                ExtWordUpPhase = WordUpPhase;
                }
            List<ChartBase> ChartBases = new List<ChartBase>();
            DataTable AllProjekte = GetPhasenRichtigeProjektDaten(ExtWordUpPhase,
                RequestedSortOrder, ChartBase.RequiredItemsFromProjekteUebersicht);
            foreach (DataRow ProjektRow in AllProjekte.Rows)
                ChartBases.Add(new ChartBase(ProjektRow));
            return ChartBases;
            }
示例#23
0
文件: PrintOut.cs 项目: heinzsack/DEV
        private Dictionary<String, Dictionary<String, String>> CreateProjectListOAPGetrennt
            (IEnumerable<DbEntities.dbserver3.wordup.rows.Projekt> SortableProjekte, Basics.DataSelection RequestedPhase,
                String PrintThisSecurityGroup, String OutputFileName, String HeadLine,
                bool WithOrWithoutPlakate, bool WithOrWithoutActivities, bool WithOrWithoutTermine)
            {
            Dictionary<String, Dictionary<String, String>> Result = new Dictionary<String, Dictionary<String, String>>();
            XAMLPrintoutDefinitions.PrintFileCards PrintHandler = new XAMLPrintoutDefinitions.PrintFileCards();

            foreach (
                DbEntities.dbserver3.wordup.rows.ArbeitsGruppe AGEntry in Data.DbServer3.WordUp.ArbeitsGruppen.Collection
                    .Where(Entry => Entry.WordUpRootId == Guid.Parse(Data.DbServer3.WordUp.WordUpID))
                    .OrderBy(Entry => Entry.NameId))
                {
                String AG = AGEntry.NameId;
                String AGID = AGEntry.Id.ToString().ToLower();
                String Ortsteile = AGEntry.AktuallOrtsTeile;
                String AGFileName = OutputFileName.Replace(".pdf", "_" + AG + ".pdf");
                String AGTitle = AG + " - " + Ortsteile + "\r\n" + HeadLine;
                Result[AG] = new Dictionary<String, String>();
                Result[AG][AGID] = AGFileName + ";" + AGTitle;

                List<Object> PrintableProjektePerAG = DataWrapper.Instance.CreateTreeForArbeitsGruppenProjekte
                    (RequestedPhase, AG,
						SortableProjekte.Where(whe => whe.Ort.OrtsTeil.AktuallArbeitsGruppe.NameId == AG),
						PrintThisSecurityGroup, WithOrWithoutPlakate,
                        WithOrWithoutActivities, WithOrWithoutTermine);
                String CreatedProjekteFileName = PrintHandler.PrintSimpleFormattedArbeitsGruppenPersonenProjekte
                    (PrintableProjektePerAG, AGFileName, AGTitle);
                }

            return Result;
            }
示例#24
0
 public String GetPhasenClause(Basics.DataSelection RequestedPhase)
     {
     if (RequestedPhase == Basics.DataSelection.Ideen)
         return String.Empty;
     if (RequestedPhase == Basics.DataSelection.Wuensche)
         return String.Empty;
     if (RequestedPhase == Basics.DataSelection.Planungen)
         return " and Wertigkeit > 0 ";
     if (RequestedPhase == Basics.DataSelection.Projekte)
         return " and Wertigkeit > 0 and ZustaendigID = 'EF0EFA6B-6884-4B54-9FDE-BCC575AE0D2A' ";
     if (RequestedPhase == Basics.DataSelection.Realisierungen)
         return " and ID in (SELECT distinct (ProjektID) FROM Aktivitaeten where WordUpRootID = '" + WordUpID +
                "' "
                + " and   (AktivitaetsTypenID = 'D208400A-2A5B-4384-86D6-F95618682BF9') ) ";
     return String.Empty;
     }
示例#25
0
文件: PrintOut.cs 项目: heinzsack/DEV
		public void CreateChartsForActuallPhase(Basics.DataSelection PhaseToCreate)
            {
            Cursor = Cursors.Wait;

            String WordUpPhasenText = PhaseToCreate.ToString();

            DataTable ProjektUebersicht = DataWrapper.Instance.GetPhasenRichtigeProjektDaten
                (PhaseToCreate, DataWrapper.SortOrder.Typen, "*");


            CreateBackGroundReportAndWindow(ChartZustaendigVerteilungWindow, "ProjektTypen",
                new Dictionary<String, Object>() {{"ProjektUebersicht", ProjektUebersicht}},
                "wordup23_" + WordUpPhasenText + "_ProjektTypen_Liste",
                "ProjektTypen Liste für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")", "PDF",
                "Charts\\" + WordUpPhasenText);

            if (PhaseToCreate == Basics.DataSelection.Ideen)
                {
                CreateBackGroundReportAndWindow(ChartTypenVerteilungWindow, "ChartProjektTyp",
                    new Dictionary<String, Object>() {{"Charts", ChartBaseIdeen}},
                    "wordup23_" + WordUpPhasenText + "_ProjektTypen_Chart",
                    "ProjektTypen Aufteilung für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")",
                    "PDF",
                    "Charts\\" + WordUpPhasenText);
                CreateBackGroundReportAndWindow(ChartOrtsTeilVerteilungWindow, "ChartOrtsTeil",
                    new Dictionary<String, Object>() {{"Charts", ChartBaseIdeen}},
                    "wordup23_" + WordUpPhasenText + "_Alle_Orte_Charts",
                    "Orts Aufteilung für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")", "PDF",
                    "Charts\\" + WordUpPhasenText);
                CreateBackGroundReportAndWindow(ChartZustaendigVerteilungWindow, "ChartZustaendig",
                    new Dictionary<String, Object>() {{"Charts", ChartBaseIdeen}},
                    "wordup23_" + WordUpPhasenText + "_Zustaendig_Charts",
                    "Zuständigkeits Aufteilung für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")",
                    "PDF",
                    "Charts\\" + WordUpPhasenText);
                }
            else
                {
                try
                    {
                    CreateBackGroundReportAndWindow(ShowAllOrteWindow, "OrtsAufstellung",
                        new Dictionary<String, Object>()
                            {
                            {
                            "Slots", CreateSlotList
                                (DataWrapper.Instance.CreateCardList(null, "CreateOnly", PhaseToCreate))
                            }
                            },
                        "wordup23_" + WordUpPhasenText + "_Alle_Orte_Liste",
                        "Alle " + WordUpPhasenText + " Orte, die im Durchlauf " +
                        DataWrapper.Instance.WordUpName + " Verwendung finden", "PDF",
                        "Charts\\" + WordUpPhasenText);
                    }
                catch (Exception Excp)
                    {
                    WMB.Basics.ReportErrorToEventViewer("Fehler bei CreateBackGroundReportAndWindow\r\n:" +
                                                        Excp.ToString());
                    throw new Exception("Fehler bei CreateBackGroundReportAndWindow\r\n:" + Excp.ToString());
                    }

                CreateBackGroundReportAndWindow(ChartTypenVerteilungWindow, "ChartProjektTyp",
                    new Dictionary<String, Object>()
                        {
                        {
                        "Charts",
                        WordUp23.DataWrapper.Instance.CreateChartBase(DataWrapper.SortOrder.Typen, PhaseToCreate)
                        }
                        },
                    "wordup23_" + WordUpPhasenText + "_ProjektTypen_Chart",
                    "ProjektTypen Aufteilung für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")",
                    "PDF",
                    "Charts\\" + WordUpPhasenText);
                CreateBackGroundReportAndWindow(ChartOrtsTeilVerteilungWindow, "ChartOrtsTeil",
                    new Dictionary<String, Object>()
                        {
                        {
                        "Charts",
                        WordUp23.DataWrapper.Instance.CreateChartBase(DataWrapper.SortOrder.ArbeitsGruppen,
                            PhaseToCreate)
                        }
                        },
                    "wordup23_" + WordUpPhasenText + "_Alle_Orte_Charts",
                    "Orts Aufteilung für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")", "PDF",
                    "Charts\\" + WordUpPhasenText);
                CreateBackGroundReportAndWindow(ChartZustaendigVerteilungWindow, "ChartZustaendig",
                    new Dictionary<String, Object>()
                        {
                        {
                        "Charts",
                        WordUp23.DataWrapper.Instance.CreateChartBase(DataWrapper.SortOrder.Verantwortlich,
                            PhaseToCreate)
                        }
                        },
                    "wordup23_" + WordUpPhasenText + "_Zustaendig_Charts",
                    "Zuständigkeits Aufteilung für " + WordUpPhasenText + " (" + DataWrapper.Instance.WordUpName + ")",
                    "PDF",
                    "Charts\\" + WordUpPhasenText);
                }

            Cursor = Cursors.Arrow;
            }
示例#26
0
        public List<SelectionCard> CreateCardList(List<Guid> SelectionZustendigKeit, String IncludeOrExclude,
            Basics.DataSelection RequestedPhase = Basics.DataSelection.Error)
            {
            if (RequestedPhase == Basics.DataSelection.Error)
                RequestedPhase = WordUpBasics.WordUpPhase;
            String SelectionPart = GetPhasenClause(RequestedPhase);
            if (SelectionZustendigKeit != null)
                {
                if (IncludeOrExclude == "CreateOnly")
                    {
                    SelectionPart = " and (ZustaendigID = '"
                                    + String.Join("' or ZustaendigID = '", SelectionZustendigKeit) + "') ";
                    }
                else
                    {
                    SelectionPart = " and not (ZustaendigID = '"
                                    + String.Join("' or ZustaendigID = '", SelectionZustendigKeit) + "') ";
                    }
                }

            DataTable OrteMitProjekten = null;
            if (RequestedPhase == Basics.DataSelection.Ideen)
                {
                OrteMitProjekten = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                    ("SELECT 'Alle' as ArbeitsGruppenNameID, OrtsTeil, OrteBezeichnung as OrtsNameID, OrteID, COUNT(OrteID) AS NumberOfProjekte "
                     + "FROM FullWSPlakate where WordUpRootID = '"
                     + WordUpBasics.WordUpID + "' " + SelectionPart
                     + " GROUP BY OrtsTeil, OrteBezeichnung, OrteID"
                     + " ORDER BY OrtsTeil, OrteBezeichnung, OrteID, NumberOfProjekte DESC ")
                    .Tables["FullWSPlakate"];
                }
            else
                {
                OrteMitProjekten = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                    ("SELECT ArbeitsGruppenNameID, OrtsTeil, OrtsNameID, OrteID, COUNT(OrteID) AS NumberOfProjekte "
                     + "from  ProjektUebersicht WHERE WordUpRootID = '"
                     + WordUpBasics.WordUpID + "' " + SelectionPart +
                     " GROUP BY ArbeitsGruppenNameID, OrtsTeil, OrtsNameID, OrteID"
                     + " ORDER BY ArbeitsGruppenNameID, OrtsTeil, OrtsNameID, OrteID, NumberOfProjekte DESC ")
                    .Tables["ProjektUebersicht"];
                }
            String OldOrtsTeil = "Missing";
            List<SelectionCard> CardList = new List<SelectionCard>();
            SelectionCard ActuallCard = null;
            int PageNumber = 0;
//#if DEBUG
//			int RunningCounter = 0;
//#endif

            foreach (DataRow ProjektOrt in OrteMitProjekten.Rows)
                {
                //TODO
//#if DEBUG
//				if (((Guid )ProjektOrt ["OrteID"]) != Guid.Parse ("2504fb93-c061-4f5c-b0a7-87253c391972"))
//					continue;
//#endif
                String OrtsTeil = ProjektOrt["OrtsTeil"].ToString();
                if (OrtsTeil != OldOrtsTeil)
                    {
                    OldOrtsTeil = OrtsTeil;
                    ActuallCard = new SelectionCard(++PageNumber);
                    ActuallCard.OrtsTeil = OrtsTeil;
                    ActuallCard.ArbeitsGruppenNameID = ProjektOrt["ArbeitsGruppenNameID"].ToString();
                    CardList.Add(ActuallCard);
                    }
                DataTable FullWSPlakateAnDiesemOrt = WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                    ("SELECT ProjektID, ProjektBeschreibung, Count (ID) as NumberOfRequests "
                     + "FROM FullWSPlakate where OrteID = '"
                     + ProjektOrt["OrteID"].ToString() + "' and WordUpRootID = '"
                     + WordUpBasics.WordUpID + "' " + SelectionPart.Replace(" and ID in", " and ProjektID in")
                     + " Group By ProjektID, ProjektBeschreibung  "
                     + "order by ProjektID, ProjektBeschreibung, NumberOfRequests desc")
                    .Tables["FullWSPlakate"];
                // 
                int NumberOfProjecteAnDiesemOrt = Convert.ToInt32(ProjektOrt["NumberOfProjekte"]);
                int NumberOfPlakateAnDiesemOrt = FullWSPlakateAnDiesemOrt.Rows.Count;
                if (NumberOfPlakateAnDiesemOrt == 0)
                    {
                    MessageBox.Show("NumberOfPlakateAnDiesemOrt == 0 bei OrteID =\r\n" + ProjektOrt["OrteID"].ToString());
                    continue;
                    }
                if (RequestedPhase != Basics.DataSelection.Ideen)
                    {
                    if ((NumberOfProjecteAnDiesemOrt != NumberOfPlakateAnDiesemOrt)
                        || (NumberOfPlakateAnDiesemOrt == 0))
                        {
                        DataTable ProjektenAnDiesemOrt =
                            WordUpBasics.WordUpWCFAccess.GetCommonDataSet
                                ("SELECT ID, OrteID from  ProjektUebersicht WHERE WordUpRootID = '"
                                 + WordUpBasics.WordUpID + "' and OrteID = '" + ProjektOrt["OrteID"].ToString()
                                 + "' " + SelectionPart)
                                .Tables["ProjektUebersicht"];
                        StringBuilder ErrornousProjektIDs = new StringBuilder();
                        foreach (DataRow PlakateAnDiesemOrtRow in FullWSPlakateAnDiesemOrt.Rows)
                            {
                            String ProjektIDAusPlakaten = PlakateAnDiesemOrtRow["ProjektID"].ToString();
                            DataRow[] FoundProjekteRows =
                                ProjektenAnDiesemOrt.Select("ID = '" + ProjektIDAusPlakaten + "'");
                            if (FoundProjekteRows.Length == 1)
                                continue;
                            ErrornousProjektIDs.AppendLine(ProjektIDAusPlakaten + " FoundProjekteRows.Length = "
                                                           + Convert.ToString(FoundProjekteRows.Length));
                            }
                        StringBuilder MissingPlakatProjektIDs = new StringBuilder();
                        foreach (DataRow ProjekteAnDiesemOrtRow in ProjektenAnDiesemOrt.Rows)
                            {
                            String ProjektIDAusProjekten = ProjekteAnDiesemOrtRow["ID"].ToString();
                            DataRow[] FoundPlakateRows =
                                FullWSPlakateAnDiesemOrt.Select("ProjektID = '" + ProjektIDAusProjekten + "'");
                            if (FoundPlakateRows.Length > 0)
                                continue;
                            MissingPlakatProjektIDs.AppendLine(ProjektIDAusProjekten + " FoundPlakateRows.Length = "
                                                               + Convert.ToString(FoundPlakateRows.Length));
                            }
                        WMB.Basics.ReportErrorToEventViewer("NumberOfProjecteAnDiesemOrt = " +
                                                            Convert.ToString(NumberOfProjecteAnDiesemOrt)
                                                            + " ungleich\r\nNumberOfPlakateAnDiesemOrt = " +
                                                            Convert.ToString(NumberOfPlakateAnDiesemOrt)
                                                            + "\r\nSystemfehler bei OrteID = \"" +
                                                            ProjektOrt["OrteID"].ToString()
                                                            + "\"\r\nund SelectionPart = \"" + SelectionPart +
                                                            "\" mit folgenden fehlenden ProjektIDs\r\n"
                                                            + ErrornousProjektIDs.ToString() +
                                                            "\r\nund folgenden fehlenden Plakaten:\r\n"
                                                            + MissingPlakatProjektIDs.ToString());
                        MessageBox.Show("NumberOfProjecteAnDiesemOrt = " + Convert.ToString(NumberOfProjecteAnDiesemOrt)
                                        + " ungleich\r\nNumberOfPlakateAnDiesemOrt = " +
                                        Convert.ToString(NumberOfPlakateAnDiesemOrt)
                                        + "\r\nSystemfehler bei OrteID = \"" + ProjektOrt["OrteID"].ToString()
                                        + "\"\r\nund SelectionPart = \"" + SelectionPart +
                                        "\" mit folgenden fehlenden ProjektIDs\r\n"
                                        + ErrornousProjektIDs.ToString() + "\r\nund folgenden fehlenden Plakaten:\r\n"
                                        + MissingPlakatProjektIDs.ToString());
                        }
                    }
                bool IsMultiPageProjekt = (NumberOfProjecteAnDiesemOrt > 4);
                while (NumberOfProjecteAnDiesemOrt > 0)
                    {
                    if (ActuallCard.FreeSlots == -1)
                        {
                        int NumberOfProcessedEntries = 0;

                        if (FullWSPlakateAnDiesemOrt.Rows.Count == 0)
                            {
                            MessageBox.Show("ActuallCard.FreeSlots == -1\r\n"
                                            + "NumberOfPlakateAnDiesemOrt == 0 bei OrteID =\r\n" +
                                            ProjektOrt["OrteID"].ToString());
                            }

                        NumberOfProcessedEntries = SelectionCard.EnterOrteWithProjekte
                            (ActuallCard, FullWSPlakateAnDiesemOrt, ActuallCard.PageNumberString);
                        if (NumberOfProcessedEntries > 0)
                            {
                            NumberOfProjecteAnDiesemOrt -= NumberOfProcessedEntries;
                            continue;
                            }
                        else
                            {
                            throw new Exception("A - NumberOfProcessedEntries == 0");
                            }
                        }
                    if (ActuallCard.FreeSlots >= NumberOfProjecteAnDiesemOrt)
                        {
                        int NumberOfProcessedEntries = 0;
                        if (FullWSPlakateAnDiesemOrt.Rows.Count == 0)
                            {
                            MessageBox.Show("ActuallCard.FreeSlots >= NumberOfProjecteAnDiesemOrt\r\n"
                                            + "NumberOfPlakateAnDiesemOrt == 0 bei OrteID =\r\n" +
                                            ProjektOrt["OrteID"].ToString());
                            }
                        NumberOfProcessedEntries = SelectionCard.EnterOrteWithProjekte
                            (ActuallCard, FullWSPlakateAnDiesemOrt, ActuallCard.PageNumberString);
                        if (NumberOfProcessedEntries > 0)
                            {
                            NumberOfProjecteAnDiesemOrt -= NumberOfProcessedEntries;
                            continue;
                            }
                        else
                            {
                            throw new Exception("B - NumberOfProcessedEntries == 0");
                            }
                        }
                    ActuallCard = new SelectionCard(++PageNumber);
                    ActuallCard.ArbeitsGruppenNameID = ProjektOrt["ArbeitsGruppenNameID"].ToString();
                    ActuallCard.OrtsTeil = OrtsTeil;
                    CardList.Add(ActuallCard);
                    }
                if ((IsMultiPageProjekt == true)
                    && (ActuallCard.FreeSlots > 0))
                    {
                    ActuallCard = new SelectionCard(++PageNumber);
                    ActuallCard.ArbeitsGruppenNameID = ProjektOrt["ArbeitsGruppenNameID"].ToString();
                    ActuallCard.OrtsTeil = OrtsTeil;
                    CardList.Add(ActuallCard);
                    }
                }
            return CardList;
            }
示例#27
0
文件: PrintOut.cs 项目: heinzsack/DEV
 public void CreatePlacesForActuallPhase(Basics.DataSelection PhaseToCreate)
     {
     Cursor = Cursors.Wait;
     CreateBackGroundReportAndWindow(ShowAllOrteWindow, "OrtsAufstellung",
         new Dictionary<String, Object>() {{"Slots", CreateSlotList(AllCards)}},
         "wordup23_" + DataWrapper.Instance.WordUpPhasenText + "_Alle_Orte",
         "Alle " + DataWrapper.Instance.WordUpPhasenText + " Orte, die im Durchlauf " +
         DataWrapper.Instance.WordUpName + " Verwendung finden");
     CreateBackGroundReportAndWindow(ShowBezirksOrteWindow, "OrtsAufstellung",
         new Dictionary<String, Object>() {{"Slots", CreateSlotList(BezirksCards)}},
         "wordup23_" + DataWrapper.Instance.WordUpPhasenText + "_Bezirks_Orte",
         DataWrapper.Instance.WordUpPhasenText + " BezirksOrte, die im Durchlauf " +
         DataWrapper.Instance.WordUpName + " Verwendung finden");
     CreateBackGroundReportAndWindow(ShowNonBezirksOrteWindow, "OrtsAufstellung",
         new Dictionary<String, Object>() {{"Slots", CreateSlotList(NonBezirksCards)}},
         "wordup23_" + DataWrapper.Instance.WordUpPhasenText + "_NonBezirks_Orte",
         DataWrapper.Instance.WordUpPhasenText + " NonBezirksOrte, die im Durchlauf " +
         DataWrapper.Instance.WordUpName + " Verwendung finden");
     Cursor = Cursors.Arrow;
     }
示例#28
0
文件: PrintOut.cs 项目: heinzsack/DEV
        public void CreateFremdListForActuallPhase(Basics.DataSelection PhaseToCreate)
            {
            Cursor = Cursors.Wait;

            DataTable SchulenProjektUebersicht = WordUpWCFAccess.GetCommonDataSet
                ("Select * from ProjektUebersicht where ZustaendigID = '3B2C3DB4-D526-4615-B32A-D1303C1178E1' "
                 + "order by " + DataWrapper.Instance.ActuallProjektUebersichtSortOrder).Tables["ProjektUebersicht"];
            CreateBackGroundReportAndWindow(SchulenListenWindow, "ProjektAufstellung",
                new Dictionary<String, Object>() {{"ProjektUebersicht", SchulenProjektUebersicht}},
                "wordup23_Schul_Wuensche",
                "Vorschläge, die im Durchlauf " + DataWrapper.Instance.WordUpName + " aufgetaucht sind",
                "WORD");

            DataTable MagistratsAbteilungenProjektUebersicht = WordUpWCFAccess.GetCommonDataSet
                ("Select * from ProjektUebersicht where ZustaendigID = '64AEBB26-D469-4B8F-9FB4-F56ED2EBF09A' "
                 + "order by " + DataWrapper.Instance.ActuallProjektUebersichtSortOrder).Tables["ProjektUebersicht"];
            CreateBackGroundReportAndWindow(MagistratsAbteilungenListenWindow, "ProjektAufstellung",
                new Dictionary<String, Object>() {{"ProjektUebersicht", MagistratsAbteilungenProjektUebersicht}},
                "wordup23_Magistrats_Abteilungen_Wuensche",
                "Vorschläge an fremde Magistratsabteilungen, die im Durchlauf " + DataWrapper.Instance.WordUpName +
                " aufgetaucht sind",
                "WORD");

            DataTable PrivateProjektUebersicht = WordUpWCFAccess.GetCommonDataSet
                ("Select * from ProjektUebersicht where ZustaendigID = '01BB0947-B3C9-42A9-9019-209821AD2DA8' "
                 + "order by " + DataWrapper.Instance.ActuallProjektUebersichtSortOrder).Tables["ProjektUebersicht"];
            CreateBackGroundReportAndWindow(SchulenListenWindow, "ProjektAufstellung",
                new Dictionary<String, Object>() {{"ProjektUebersicht", PrivateProjektUebersicht}},
                "wordup23_Private_Wuensche",
                "Vorschläge an Private, die im Durchlauf " + DataWrapper.Instance.WordUpName + " aufgetaucht sind",
                "WORD");
            Cursor = Cursors.Arrow;
            }
示例#29
0
	    private void DoRun(Basics.ShowDatenTyp RequestedTyp)
			{
			BeginInit();
			MapControlInstance.Markers.Clear();
			if (RequestedTyp == Basics.ShowDatenTyp.Error)
				RequestedTyp = GetSelectedTypButton();
		    List<Marker> MarkerToAdd = MapReportsModelInstance.DoRun(RequestedTyp);
            if (MarkerToAdd == null)
	            {
	            MessageBox.Show("Unvollständige Eingabe");
	            }
			else
	            {
	            DrawMap(MarkerToAdd);
				}
			EndInit();
			}
示例#30
0
        public DataCollection<Object> GetArbeitsGruppenList(DataCollection<Object> ArbeitsGruppen,
            Basics.DataSelection PhaseToUseWhenCreateTree)
            {
            if (PhaseToUseWhenCreateTree == Basics.DataSelection.Error)
                return null;
            List<Guid> TypGuidsToShow = null;
            List<Guid> OrteGuidsToShow = null;
            List<Guid> ProjekteGuidsToShow = null;

            CreateDataReductionListsToCreatePhasenAdaptedTrees(PhaseToUseWhenCreateTree,
                ref ProjekteGuidsToShow, ref OrteGuidsToShow, ref TypGuidsToShow);
            foreach (DataRow GruppenRow in WordUpBasics.ArbeitsGruppen.Values)
                {
                ArbeitsGruppe Gruppe = new ArbeitsGruppe(GruppenRow)
                    {
                    HeadLine = GruppenRow["LangName"].ToString()
                    };
                ArbeitsGruppen.Add(Gruppe);
                GetOrtsTeilList(Gruppe.Childrens, Gruppe, OrteGuidsToShow, ProjekteGuidsToShow);
                }

            return ArbeitsGruppen;
            }