Codeblock Onlinehilfe

TBeCbPCData


TBeCbPCData

Die Klasse TBeCbPCData stellt Daten zur Verfügung, die üblicherweise für eine Ressourcen-Planung / Planungs-Simulation o.ä. benötigt werden.
In der aktuellen Ausbaustufe werden Ressourcen-Daten und darüber ressourcenspezifische Anwesenheiten zur Verfügung gestellt.


Funktionen und Methoden:

Funktion

Beschreibung

ReInit()

Datenhaltung (re-)initialisieren.

LoadTestData()

Testdaten laden. (steht nicht im beas zur verfügung)

LoadDataBaseData()

Daten aus der Datenbank in den Speicher von TBeCbPCData laden.

GetAddingErrors()

Alle protokollierten Fehler in der Bearbeitung auslesen

TBeCbPCParams


TBeCbPCResourceList


TBeCbPCResource


Übersicht:

worddavc24a524cc2b561328efdcf6830413758.png

Beispiel

| m_oCbPcData, m_oResourceList, m_dPlanningStart:DT |

//******************************************************************************
function ResourceTypToString(nResourceTyp)
  case nResourceTyp
    of cbrtPerson   :: Result := 'Person',
    of cbrtMaschine :: Result := 'Maschine',
  endcase,
end,

//******************************************************************************
// Infos über alle Ressourcen in der Liste ausgeben
//******************************************************************************
function PrintResourceList(oResourceList) // Klasse = TBeCbPCResourceList
| i, m_oCurResource, m_oCurTimeLine, m_dtStartAvail:DT, m_dtEndAvail:DT,
  m_drCompOperationTime:DR, cResDesc, cAvailText  |
   for i := 0 to oResourceList.Count - 1 do
      m_oCurResource := oResourceList.GetResourceByIndex(i), // Klasse = TBeCbPCResource

      // TimeLine der Ressourcen holen
      m_oCurTimeLine := m_oCurResource.OperationTimeLine,

      cResDesc := Str(i) + '. Ressource ' + crlf + crlf +
                  '   Bezeichnung   : ' + m_oCurResource.Description  + crlf +
                  '   Res.Typ       : ' + ResourceTypToString(m_oCurResource.ResType) + crlf +
                  '   Res.Id        : ' + Str(m_oCurResource.ResID ),

      // Information über die Anwesenheit der Ressource zusammenstellen
      if m_oCurTimeLine.HasAvailabilityData then
         m_dtStartAvail        := m_oCurTimeLine.BeginOfFirstAvailability,
         m_dtEndAvail          := m_oCurTimeLine.EndOfLastAvailability,
         m_drCompOperationTime := m_oCurTimeLine.OperationDurationBetween(m_dtStartAvail, m_dtEndAvail),
         cAvailText := '   Verfügbarkeit : ' + m_dtStartAvail.AsString + ' bis ' + m_dtEndAvail.AsString + crlf +
                       '   Operationszeit: Insgesamt ' + m_drCompOperationTime.AsString,
      else
         cAvailText := crlf + '   Keine Verfügbarkeitsdaten vorhanden !',
      endif,

      Writeln( cResDesc + crlf + cAvailText + crlf ),
   next,
end,

// Datenhaltung erzeugen
m_oCbPcData := CreateObject('TBeCbPCData'),
startseq,
   m_oCbPcData.ReInit(),

   // Planungs-Start = Monats-Beginn, 14 Tage Dauer
   // => die Angaben sind relevant für das Laden der Planungs-Daten
   m_dPlanningStart.Precision       := precMinutes,
   m_dPlanningStart.DateTime        := BoM(Date()),
   m_oCbPcData.Params.PlanningStart := m_dPlanningStart,
   m_oCbPcData.Params.PlanningDays  := 2,

   // Alternative 1: Test-Daten laden
   m_oCbPcData.LoadTestData(),

   // Alternative 2: DB-Daten laden
   // m_oCbPcData.LoadDataBaseData(),

   // Infos über Ressourcen ausgeben
   PrintResourceList(m_oCbPcData.ResourceList),
always,
   DestroyObject(m_oCbPcData),
stopseq,

Weitere Verknüpfungen