Trigger speichert den Ausführungstag nicht richtig!



  • Hallo Forum
    ich habe einen Trigger erstellt, das meiste funktioniert, aber hier ist ein Fehler, bei einem Monatlichen Trigger der z.B. jeden 5.Tag im Monat ausgeführt werden soll wird der wert nicht richtig in den Trigger übernommen, manche aber schon!!!! 😮
    Hier schon mal der Code für den Trigger:

    pTrigger.wBeginDay = m_StartMonat.GetDay();
    pTrigger.wBeginMonth = m_StartMonat.GetMonth();
    pTrigger.wBeginYear = m_StartMonat.GetYear();
    pTrigger.wStartHour = m_StartMonat.GetHour();
    pTrigger.wStartMinute = m_StartMonat.GetMinute();
    
    pTrigger.cbTriggerSize = sizeof(TASK_TRIGGER);
    pTrigger.TriggerType = TASK_TIME_TRIGGER_MONTHLYDATE;
    pTrigger.Type.MonthlyDate.rgfDays = m_iMonatTag;
    //pTrigger.Type.MonthlyDate.rgfDays = 11; auch diese Zeile funktioniert nicht, der Task sollte jeden 11 April und Mai ausgeführt werden
    // Stattdessen steht im Scheduller bei dieser einstellung, z.B.:
    // Um 16:55 am Tag 1 usw. Apr, Mai ab dem 07.02.2005
    pTrigger.Type.MonthlyDate.rgfMonths = TASK_APRIL | TASK_MAY; 
    
    // Es sollte aber bei dieser einstellung z.B. rgfDays = 11 stehen: 
    // Um 16:55 am Tag 11  Apr, Mai ab dem 07.02.2005
    
    // 1 und 2 funktioniert gut, bei pTrigger.Type.MonthlyDate.rgfDays = 4 zeigt der Scheduller z.B. das der Task "3" Tag ausgeführt werden soll!!!! :eek: 
    // dasist aber falsch, er sollte jeden 4 im gewählten Monat ausgeführt werden!!
    

    Das ist der Code, vieleicht gibts bestimmte Werte die beachtet werden müssen??? Wenn jemand helfen kann bin ich sehr dankbar dafür 🤡
    mfg
    Mirsad



  • Hi,
    keiner eine Idee?! 😞
    mfg
    mirsad



  • rgfDays ist ein Bitfeld.



  • Hi MFK,
    danke für deine Antwort, das heist das ich bestimmte Bits setzen muß für bestimmte Tage?! Oder?
    Wenn ja, wie kann ich rausfinden welche Bits gesetzt werden müssen, wie das Bitmuster ausschaut?
    mfg
    mirsad



  • rgfDays
    Specifies the day of the month a task runs. This value is a bit field that specifies the day(s) the task will run. Bit 0 corresponds to the first of the month, bit 1 to the second, and so forth.



  • Hallo Jungs,

    dword schrieb:

    rgfDays
    Specifies the day of the month a task runs. This value is a bit field that specifies the day(s) the task will run. Bit 0 corresponds to the first of the month, bit 1 to the second, and so forth.

    danke für eure Hilfe, habs geschaft, nicht gerade die schönste Lösung aber es funktioniert, ich habe einfach das benötigte Bit gesetzt das für den jeweiligen Monatsdatum zuständig ist! Z.B. Bit 4 für den TAG 5 im Monat, so wie oben beschrieben! 🤡 😕
    mfg
    mirsad



  • Das stimmt aber nicht. Bit 5 ist für Tag 6 zuständig...



  • hab mich schon korrigiert 🤡


Anmelden zum Antworten