Jelentési sablon készítése

A jelentések a beépített DevExpress Report Designer összetevővel készültek, a szerverről érkező adatok alapján.

A jelentés összeállításához a következőket kell tennie:

  • Rajzolj egy jelentést szabványos vizuális elemekkel a kívánt megjelenés elérése érdekében.
  • A mezõlistából adja meg a jelentés létrehozásához szükséges attribútumokat.
  • A szkriptek használatával készítsen lekérdezést, hogy megkapja a szükséges adatokat az API-t az jelentések készítéséhez.

Minden jelentés elején:

  1. Hívja a helyi menüt a Jelentéstervező üres állásából.
  2. Kattintson a Subreport hozzáadása elemre:
    • Feladatok. ha a jelentés feladatokon alapul;
    • Tárgyakat. ha a jelentés tárgyakra épül;

A "Subreport hozzáadása" parancs szükséges az adatok adatbázisból történő lekérdezéséhez. Csak ezt követően folytathatja munkáját a jelentés kialakításában.

Példa a jelentések előállítására feladatok alapján

Tekintsünk egy példát arra, hogy készítsen jelentést az Ön által megadott feladatokról.

  1. Hívja a helyi menüt a Jelentéskészítő üres helyéről és válassza ki a Feladatok hozzáadása parancsot.
  2. Válassza ki a táblázatot az Eszköztárban, és húzza át a DetailReport - "Feladatok" területre.
  3. A Mező listában bontsa ki a Feladatok listát. Válassza a Cím mezőt, és húzza az első cellába.
  4. Ezután válassza ki a Leírás mezőt, és húzza a második cellába.
  5. A harmadik cellában húzza a DeadlineDate mezőt.
    Jelentési sablon készítése

Így összeállítottunk egy egyszerű jelentést, amely információkat tartalmaz minden feladatról: a munka címe. munkaköri leírás és határidő.

Táblázatfejléc létrehozása:

  1. Kattintson a jobb gombbal a Detail1 területre. A helyi menüből válassza a Hozzáadás rész - Cím jelentése lehetőséget.
  2. Adja hozzá az asztalt a ReportHeader területhez.
  3. Töltse ki és formázza meg a táblázat fejlécét.
    Jelentési sablon készítése

Töltse ki a jelentést kezdeményezői információkkal és csoportos feladatokkal az iniciátorok segítségével.

  1. Kattintson a jobb gombbal a Detail1 területre. Válassza ki a Hozzáadás csoport - Csoport cím parancsot a helyi menüben.
  2. Ha csoportosítási szabályokat szeretne beállítani a GroupHeader1 csoportfejléc mellett, akkor kattintson a csoport tulajdonságainak bontására.
  3. Állítsa be a kezdeményező → Id csoportosítás mezőt. Kattintson az OK gombra.
  4. Válassza ki a Szöveges eszközt, és szövegeket adjon hozzá a GroupHeader1 területhez.
  5. A Mező listában bontsa ki a Feladatok → Kezdeményező → Személy parancsot. Válassza ki a DisplayName mezőt, és húzza azt a csoport fejlécére.
    Jelentési sablon készítése

Annak érdekében, hogy a jelentések elkészítésekor információkat szerezzen a feladatokról, a parancsfájl segítségével össze kell állítania egy lekérdezést a kiszolgálónak:

  1. Az Eszköztáron kattintson a Szkriptek elemre.
  2. Olyan szkriptet írjon, amely adatokat kér a jelentéstervezőben megadott attribútumokhoz. A jelenlegi felhasználóhoz rendelt feladatokról jelentést kell készíteni. Ehhez a PilotReport_DataSourceDemanded metódust használjuk, amely adatokat kér a kiszolgálótól a jelentéshez:

private void PilotReport_DataSourceDemanded (objektum feladó, System.EventArgs e)


LongRunning.Start (ez, () => <
var currentPerson = context.CurrentPerson;
var feladatokBuilder = QueryBuilder.CreateTaskQueryBuilder ();
tasksBuilder.Must (TaskFields.ExecutorPositionId.Be (currentPerson.MainPosition.Id));
context.Tasks = context.GetTasks (tasksBuilder);

Ha vizuálisan megmutatja, hogy a feladat időben nem fejeződött be, adja meg a formázási szabályokat.

Ha a kezdeményező nem állította be a feladat határidejét, akkor a jelentés egy speciális rendszerértéket jelenít meg a 31.12.9999-ben. Ezt az értéket szöveggé alakíthatja, például időhatár nélkül. Ehhez hozzon létre egy számított mezőt:

A mintajelentéssablonokat a Pilot-ICE Letöltőközpont által készített fejlett jelentések letöltésével is megtekintheti. a Pilot-ICE webhelyről. Ha szerkeszteni szeretné őket, tanulmányozhatja a lekérdezések írására és a számított mezők leírására szolgáló további példákat.

Példa a dokumentumokról szóló jelentés elkészítésére

Tekintsünk egy egyszerű példát egy projektjelentés létrehozására paraméterekkel. Ebben a jelentésben a kiválasztott projekt összes dokumentuma megjelenik.

  1. Hívja a helyi menüt a Jelentéstervező üres mezőjében, és válassza ki a Subreport - Objects hozzáadása parancsot.
  2. Válassza ki a táblázatot az Eszköztárban, és húzza a DetailReport - "Objects" területre.
  3. Törölje a harmadik cellát.
  4. A Mező listában bontsa ki az Objektumok listát. Válassza a Cím mezőt, és húzza a második cellába.
  5. Válassza ki az első cellát. Bontsa ki a cellák tulajdonságait kattintással.
  6. Az Összefoglalás mezőben kattintson a gombra. . Válassza ki az Összegzés funkciót. Számlálási tartomány - Jelentés. Ezután kattintson az OK gombra.

A táblázat elkészült. Ahhoz, hogy a felhasználók kiválasszák azt a projektet, amelyhez a jelentést meg szeretné kapni, létre kell hoznia a paramétert:

  1. A Mezõlistában kattintson az Opciók gombra.
  2. Kattintson a jobb gombbal a helyi menüre, és válassza a Paraméter hozzáadása parancsot.
  3. Az Új paraméter hozzáadása ablakban. adja meg a Project paraméter nevét. Leírás Projekt :.
  4. Válassza ki a Pilot objektumtípust a listából.
  5. Állítsa be az alapértelmezett értéket, amelyet a jelentés elkészítése során felajánl.
  6. A befejezéshez kattintson az OK gombra.

Írj egy olyan szkriptet, amely lekérdezi a meglévő dokumentumok adatait a felhasználó által kiválasztott projektben:

private void PilotReport_DataSourceDemanded (objektum feladó, System.EventArgs e)


LongRunning.Start (ez, () => var builder = QueryBuilder.CreateObjectQueryBuilder ();
builder.Must (ObjectFields.TypeId.Be (documentType.Id));
var selectedProject = (RObject) Paraméterek ["Projekt"].
context.Objects = context.GetObjects (builder, selectedProject.Id);
DataSource = kontextus;

A DevExpress Jelentéstervező összes funkciójának részleteit lásd a DevExpress dokumentációjában.