| Systemwalker Operation Manager リファレンスマニュアル - UNIX/Windows(R)共通 - | 
			目次
			索引
			![]()  
		 | 
	
| 第17章 API情報 | > 17.1 カレンダAPI | 
カレンダ更新API(Mp_SetCalendar2)について説明します。
| 
 int Mp_SetCalendar2 (char *APL_name,  | 
Mp_SetCalendar2関数は、カレンダ情報の更新(指定カレンダが存在しない場合は、登録として扱う)を行います。第何週目の何曜日といった、年ごとに日付が変動する休日および振替休日の情報も更新できます。
SYSTEM_CALENDARについては、更新できません。
また、過去の日付は、設定できません。
要求元アプリケーション名(64バイト以内)の格納領域アドレスを指定します。
終わりはNULLを指定してください。“Mp_”および“_CAL_”の文字列で始まる名前は、使用しないでください。
更新するカレンダ名の格納領域アドレスを指定します。カレンダ名は、24バイト以内で終わりにNULLを指定してください。
カレンダ更新情報構造体(CALENDAR_WDAT2)のアドレスを指定します。
カレンダ更新情報構造体については、“カレンダ登録API”を参照してください。
| 
 復帰値  | 
 意 味  | 
| 
 0  | 
 正常終了しました。  | 
| 
 -5  | 
 SYSTEM_CALENDARが指定されました。  | 
| 
 -6  | 
 システム管理者(Administratorsグループに属するユーザまたはスーパーユーザ)ではありません。  | 
| 
 -8  | 
 カレンダ情報に誤りがあります。  | 
| 
 -10  | 
 カレンダサービス/カレンダデーモンが動作していません。  | 
| 
 -11  | 
 メモリ不足です。  | 
| 
 -15  | 
 カレンダ名に指定できない文字を指定しました。  | 
| 
 -16  | 
 ファイル操作に失敗しました(writeエラー)。  | 
| 
 -17  | 
 カレンダ名長が不当です。  | 
カレンダ更新APIのプログラム例を以下に示します。
#include <stdio.h>
#include <stdlib.h> 
#include <malloc.h> 
#include <string.h> 
#include <f3crhcap.h> 
extern  void set_cal_dat2( CALENDAR_WDAT2 *) ;
void main() {
        int ret ; 
        int count ; 
        CALENDAR_WDAT2 cal_dat2 ; 
        /*..........初期化 ..........*/ 
        memset( &cal_dat2, 0x00, sizeof( CALENDAR_WDAT2) ) ;
        /*..........カレンダ情報の設定 ..........*/ 
        /*今年を設定 */ 
        cal_dat2.year = 2000 ;
        /*  振替休日を有効にする */ 
        cal_dat2.sub_holiday = 1 ;
        /*毎週日曜を休日にする */ 
        for ( count = 0 ; count < 12 ; count++ ){
                cal_dat2.holiday_w[count] = (unsigned char)0x80 ; 
        }
        /* 3年分のカレンダ情報を設定する */ 
        set_cal_dat2( &cal_dat2 ) ; 
        /*カレンダの更新 */ 
        ret = Mp_SetCalendar2( "Test Pro", "calendar_1", &cal_dat2 ) ;
        printf( "ret= %d\n", ret ) ;
        exit ( 0 ) ;
}
			目次
			索引
			![]()  
		 |