OpenOffice.org Basicでガントチャート
OpenOffice.org Basicを使ってガントチャート作成用マクロ ガントチャートforOOoを開発する手順を紹介していきます。
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
進捗データ管理ダイアログ その2

次に進捗データ管理を容易にするため、項目データに設定されている全工程の開始日・終了日、現在の実績終了日を取得するようにします。
まず、追加するメンバ変数を示します。

Type ItemType
    ~中略~
    _BeginDate As Date
    _EndDate As Date
    _Progress As Date
End Type

そして、このメンバ変数を初期化するために以下の関数を作成します。

Public Sub setItemsBeginAndEndDate
    
    Dim i As Integer
    
    For i = 1 To UBound(Items())
        setItemBeginAndEndDate(Items(i))
    Next i
    
End Sub
 
Public Sub setItemBeginAndEndDate(Item)
    
    Dim i As Integer
    Dim wk
    Dim tmp As Date
    
    Item._BeginDate = 0
    Item._EndDate = 0
    Item._Progress = 0
    
    For i = 1 To UBound(Schedules())
        
        If Item._Id = Schedules(i)._ItemId Then
            
            wk = Schedules(i)
            If wk._PlanBegin <> 0 And _
                (Item._BeginDate = 0 Or _
                    wk._PlanBegin < Item._BeginDate) Then _
                        Item._BeginDate = wk._PlanBegin
            If wk._PlanEnd <> 0 And _
                Item._EndDate < wk._PlanEnd Then _
                    Item._EndDate = wk._PlanEnd
            
            tmp = wk._PlanBegin
            If FirstDate < wk._ActEnd Then
                tmp = wk._ActEnd
            ElseIf FirstDate < wk._ActBegin Then
                tmp = Int(wk._ActBegin) + 1
            Else
                tmp = Item._BeginDate
            End If
            
            If Item._Progress < tmp Then Item._Progress = tmp
            
        End If
        
    Next i
    
    If Item._EndDate < Item._BeginDate Then _
        Item._EndDate = Int(Item._BeginDate) + 1
    
End Sub

これで下準備が整いましたので、次回は進捗データの設定・削除用関数を作成します。

スポンサーサイト

テーマ:OpenOffice.org - ジャンル:コンピュータ

コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://shinob.blog42.fc2.com/tb.php/81-f5fbacc6
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
COPYRIGHT(C) 2004 POWERD BY FC2 ALLRIGHT RESERVED.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。