¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: #root |
| | | Attribute IsMultiple |
| | | { |
| | | #keys: '3[415136.0.918010824][415136.0.918010823][415136.0.918010825]' |
| | | Description: 'æ¯å¦éè¿æ¹éçé¢å建' |
| | | ValueType: Boolean |
| | | } |
| | |
| | | // , patternDaily_IsEveryWeekday_i, periodType_i, periodStartDate_i, nrOfOccurrences_i, periodEndDate_i ); |
| | | //æ¥è¯¢æ¯å¦å·²æååäºä»¶ |
| | | event := selectobject( owner_i, Event, event, event.Subject() = subject_i |
| | | and event.StartTimeOfDay() = startTimeOfDay_i |
| | | and event.EndTimeOfDay() = endTimeOfDay_i |
| | | and event.EventType() = eventtype_i ); |
| | | and event.EventType() = eventtype_i |
| | | and ( event.LeadingParticipation().EndDate() - event.LeadingParticipation().StartDate() ) = ( endDate_i - startDate_i ) |
| | | and event.StartTimeOfDay() = startTimeOfDay_i |
| | | and event.EndTimeOfDay() = endTimeOfDay_i ); |
| | | //event := selectobject( owner_i, Event.LeadingParticipation, lp, lp.Event().Subject() = subject_i |
| | | // and lp.Event().EventType() = eventtype_i |
| | | // and ( lp.EndDate() - lp.StartDate() ) = ( endDate_i - startDate_i ) |
| | | // and lp.Event().StartTimeOfDay() = startTimeOfDay_i |
| | | // and lp.Event().EndTimeOfDay() = endTimeOfDay_i ); |
| | | //åªæéè¿æ¹éå建çé¢ä¸å·²æååäºä»¶è¿å
¥ä¸é¢æä½ |
| | | if( ismultiple and not isnull( event ) ){ |
| | | startdate := startDate_i; |
| | |
| | | //ä¿®æ¹æ§äºä»¶çé´é |
| | | nrOfOccurrences_i := enddate - startdate + 1; |
| | | startDate_i := startdate; |
| | | endDate_i := startdate; |
| | | endDate_i := ( event.LeadingParticipation().EndDate() - event.LeadingParticipation().StartDate() + startDate_i ); |
| | | periodStartDate_i := startdate; |
| | | periodEndDate_i := enddate; |
| | | // info( startDate_i, startTimeOfDay_i, endDate_i, endTimeOfDay_i, isAllDay_i, recurrenceInterval_i, patternType_i |
| | |
| | | if( not isnull( event ) ){ |
| | | event.EventType( relset, eventtype_i ); |
| | | } |
| | | |
| | | if( ismultiple ){ |
| | | event.IsMultiple( ismultiple ); |
| | | } |
| | | return event; |
| | | *] |
| | | } |
| | |
| | | [ |
| | | Orientation: 'horizontal' |
| | | Taborder: 4 |
| | | Visible: false |
| | | ] |
| | | } |
| | |
| | | { |
| | | sEvent.Type( LibCal_Event::TYPE_PARTIAL() ); |
| | | } |
| | | if( guard( category_i.Name() = LibCal_Event::TYPE_UNAVAILABLE(), false ) ) |
| | | { |
| | | pnlEventType.Visible( true ); |
| | | }else |
| | | { |
| | | pnlEventType.Visible( false ); |
| | | } |
| | | |
| | | // Set the Event and the related controls... |
| | | // The values are explicitly assigned here 'at the beginning' to the controls, |
| | |
| | | this.InitializeEventTypes(); |
| | | // Must be done here, when done in the OnCreated() the checkmarks are not always set. |
| | | this.InitializeSubscribers(); |
| | | |
| | | if( guard( sEvent.EventCategory().Name() = LibCal_Event::TYPE_UNAVAILABLE(), false ) ) |
| | | { |
| | | pnlEventType.Visible( true ); |
| | | }else |
| | | { |
| | | pnlEventType.Visible( false ); |
| | | } |
| | | // Open the dialog. |
| | | this.Show( "modal" ); |
| | | *] |
| | |
| | | Properties: |
| | | [ |
| | | DataType: 'LibCal_EventCategory' |
| | | FixedFilter: "object.Participation().Calendar().CalendarID() <> 'Common Calendar'" |
| | | FixedFilter: "object.Participation().Calendar().CalendarID() <> 'Common Calendar' and object.Participation().Event().IsMultiple()" |
| | | Source: 'dhCategory' |
| | | Taborder: 0 |
| | | Transformation: 'Event.Participation.ExplicitTimeInterval' |
| | |
| | | ] |
| | | Properties: |
| | | [ |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Calendar.CalendarID","title":"产线","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Calendar.CalendarID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.EventType.Name","title":"äºä»¶ç±»å","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.EventType.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.Subject","title":"äºä»¶","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.Subject"}},{"attribute":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"StartDate","title":"æ¥æ","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"object.Start().Date()"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.StartTimeOfDay","title":"å¼å§æ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.StartTimeOfDay"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.EndTimeOfDay","title":"ç»ææ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.EndTimeOfDay"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.Description","title":"夿³¨","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.Description"}}]' |
| | | Columns: '[{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Calendar.CalendarID","title":"产线","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Calendar.CalendarID"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.EventType.Name","title":"äºä»¶ç±»å","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.EventType.Name"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.Subject","title":"äºä»¶","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.Subject"}},{"attribute":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"StartDate","title":"å¼å§æ¥æ","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"object.Start().Date()"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.StartTimeOfDay","title":"å¼å§æ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.StartTimeOfDay"}},{"attribute":{"classtype":"WebApiDefinitionAttributeExpression","columnid":"ç»ææ¥æ","title":"ç»ææ¥æ","subtotals":"","tooltip":"","width":-1,"display":"shown","expressionbody":"object.End().Date()"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.EndTimeOfDay","title":"ç»ææ¶é´","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.EndTimeOfDay"}},{"attribute":{"classtype":"WebApiDefinitionAttributeDataMember","columnid":"Participation.Event.Description","title":"夿³¨","subtotals":"","tooltip":"","width":-1,"display":"shown","editable":false,"attribute":"Participation.Event.Description"}}]' |
| | | ContextMenu: 'listContextMenu967' |
| | | SortCriteria: 'desc:Start' |
| | | Taborder: 2 |
| | |
| | | Label: 'å¼å§æ¥æ' |
| | | MaxDuration: P0DT23H59M0S |
| | | MinDuration: P0DT0H0M0S |
| | | ShowLabel: false |
| | | Taborder: 8 |
| | | ] |
| | | } |
| | |
| | | Label: 'ç»ææ¥æ' |
| | | MaxDuration: P0DT23H59M0S |
| | | MinDuration: P0DT0H0M0S |
| | | Taborder: 10 |
| | | ShowLabel: false |
| | | Taborder: 12 |
| | | ] |
| | | } |
| | | Component dhEndTimeOfDay |
| | |
| | | Databinding: 'Duration' |
| | | Properties: |
| | | [ |
| | | Taborder: 11 |
| | | Taborder: 13 |
| | | ] |
| | | } |
| | | Component edtDescription |
| | |
| | | Multiline: true |
| | | NumberOfColumns: 29 |
| | | ShowLabel: false |
| | | Taborder: 13 |
| | | Taborder: 15 |
| | | ] |
| | | } |
| | | Component dsStartDate |
| | |
| | | Properties: |
| | | [ |
| | | DateFormat: 'DMMY' |
| | | Label: 'æ¥æ' |
| | | Label: 'å¼å§æ¥æ' |
| | | Taborder: 6 |
| | | ] |
| | | } |
| | |
| | | [ |
| | | Label: '夿³¨' |
| | | NumberOfColumns: 0 |
| | | Taborder: 12 |
| | | Taborder: 14 |
| | | ] |
| | | } |
| | | Component ButtonCreate |
| | |
| | | Properties: |
| | | [ |
| | | Label: 'æ°å¢' |
| | | Taborder: 14 |
| | | Taborder: 16 |
| | | ] |
| | | } |
| | | Component ddslType id:ddslType_360 |
| | |
| | | Taborder: 3 |
| | | ] |
| | | } |
| | | Component dsEndDate |
| | | { |
| | | #keys: '[415136.0.923680588]' |
| | | BaseType: 'WebDateSelector' |
| | | Properties: |
| | | [ |
| | | DateFormat: 'DMMY' |
| | | Label: 'ç»ææ¥æ' |
| | | Taborder: 10 |
| | | ] |
| | | } |
| | | Component dhEndDate |
| | | { |
| | | #keys: '[415136.0.923671132]' |
| | | BaseType: 'WebDataHolder' |
| | | Databinding: 'Date' |
| | | Properties: |
| | | [ |
| | | Taborder: 11 |
| | | ] |
| | | } |
| | | ] |
| | | Properties: |
| | | [ |
| | |
| | | // Set the Participation and the related controls |
| | | // (only the DataHolders, the Date-controls are set later on, after the recurrence has been initialized) |
| | | dhStartDate.Data( sLeadPart.StartDate() ); |
| | | //dhEndDate.Data( sLeadPart.EndDate() ); |
| | | dhEndDate.Data( sLeadPart.EndDate() ); |
| | | dhLeadingParticipation.Data( &sLeadPart ); |
| | | dhCategory.Data(category_i); |
| | | //info( '-----------------------', isnull( dhLeadingParticipation.Data() ) ); |
| | |
| | | isDefault := ckbApplyToNewResources.Checked(); |
| | | startDate := dsStartDate.Date(); |
| | | startTimeOfDay := durStartTimeOfDay.Duration(); |
| | | endDate := dsStartDate.Date(); |
| | | endDate := dsEndDate.Date(); |
| | | endTimeOfDay := durEndTimeOfDay.Duration(); |
| | | isAllDay := false; |
| | | |
| | |
| | | // the value of the other controls are then set via the responses of these controls. |
| | | //dhEndDate .Data( sParticipation.EndDate() + delta ); |
| | | dsStartDate.Date( startDate ); |
| | | dsEndDate.Date( startDate ); |
| | | |
| | | // Directly initialize the Duration |
| | | //this.InitializeDuration(); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | Quintiq file version 2.0 |
| | | #parent: PanelHeader_144/dsEndDate |
| | | Response OnChanged () id:Response_PanelHeader_144_dsEndDate_OnChanged |
| | | { |
| | | #keys: '[415136.0.923680587]' |
| | | CanBindMultiple: false |
| | | DefinitionID: 'Responsedef_WebDateTimeFieldBase_OnChanged' |
| | | QuillAction |
| | | { |
| | | Body: |
| | | [* |
| | | // Adjust the EndDate accordingly. |
| | | //if( dhStartDate.Data().IsFinite() ) |
| | | //{ |
| | | // // Use the EndDate of the instance if the value of the control has not been set yet. |
| | | // endDate := ifexpr( dsEndDate.Date().IsFinite(), dsEndDate.Date(), dhLeadingParticipation.Data().EndDate() ); |
| | | // |
| | | // delta := this.Date() - dhStartDate.Data(); |
| | | // dsEndDate.Date( endDate + delta ); |
| | | //} |
| | | |
| | | // Update the 'memory' for later delta-calculation, and/or setting the time back when AllDay is turned off. |
| | | dhEndDate.Data( this.Date() ); |
| | | |
| | | // Also set StartOfPeriod (always, also in case of a non-recurring event). |
| | | //dsStartOfPeriod.Date( this.Date() ); |
| | | *] |
| | | GroupServerCalls: false |
| | | } |
| | | } |