[Main] dbuse(true) initparam(printMode,reportId,han_name,bum_cd,bum_nm,tok_cat_cd,tok_cat_nm,sir_cat_cd,sir_cat_nm,dcat_cd_fr,dcat_cd_to,dcat_nm_fr,dcat_nm_to,cat_cd_fr,cat_cd_to,cat_nm_fr,cat_nm_to,syori_ymd_fr,syori_ymd_to,taisyo_y,taisyo_m,tok_cd_fr,tok_cd_to,sir_cd_fr,sir_cd_to,tan_cd_fr,tan_cd_to,tan_nm_fr,tan_nm_to,hin_cd_fr,hin_cd_to,put_on) deforgpage(blank) defheadarea(hed) defbodyarea(mei) subroutine(SelectRecords) loop(PrintNormal,@rs1,Key1,key2) printreport($printMode,true,,BASB0010:BASR0520) #------------------------------------------------- # SQL実行 #------------------------------------------------- [SelectRecords] new($param) addparam($param,$han_name) addparam($param,$bum_cd) addparam($param,$bum_nm) addparam($param,$tok_cat_cd) addparam($param,$tok_cat_nm) addparam($param,$sir_cat_cd) addparam($param,$sir_cat_nm) addparam($param,$dcat_cd_fr) addparam($param,$dcat_cd_to) addparam($param,$dcat_nm_fr) addparam($param,$dcat_nm_to) addparam($param,$cat_cd_fr) addparam($param,$cat_cd_to) addparam($param,$cat_nm_fr) addparam($param,$cat_nm_to) addparam($param,$syori_ymd_fr) addparam($param,$syori_ymd_to) addparam($param,$taisyo_y) addparam($param,$taisyo_m) addparam($param,$tok_cd_fr) addparam($param,$tok_cd_to) addparam($param,$sir_cd_fr) addparam($param,$sir_cd_to) addparam($param,$tan_cd_fr) addparam($param,$tan_cd_to) addparam($param,$tan_nm_fr) addparam($param,$tan_nm_to) addparam($param,$hin_cd_fr) addparam($param,$hin_cd_to) addparam($param,$put_on) dbselect(SelectRecords,@rs1,$param) #------------------------------------------------- # ヘッダ作成処理 #------------------------------------------------- [CleateHeader] #ヘッダ処理_ヘッダ putcell(9,1,$han_name) putcell(11,1,抽出条件:)#debug #ヘッダ処理_明細ヘッダ setdouble($row_head,14) concatenate($st_ymd,$taisyo_y,/,$taisyo_m,/,01) putcell($row_head,6,$st_ymd) #------------------------------------------------- # グラフ表示処理 #------------------------------------------------- [SettingGraphData] #年度_初期値 setdouble($hyouji_y,$taisyo_y) #年度_開始月 putcell(4,6,$st_ymd) #年度_今年 concatenate($nendo,$hyouji_y,年度) putcell(5,5,$nendo) sum($hyouji_y,-1) putcell(5,6,@rs1.arari01) putcell(5,7,@rs1.arari02) putcell(5,8,@rs1.arari03) putcell(5,9,@rs1.arari04) putcell(5,10,@rs1.arari05) putcell(5,11,@rs1.arari06) putcell(5,12,@rs1.arari07) putcell(5,13,@rs1.arari08) putcell(5,14,@rs1.arari09) putcell(5,15,@rs1.arari10) putcell(5,16,@rs1.arari11) putcell(5,17,@rs1.arari12) #------------------------------------------------- # 横計処理 #------------------------------------------------- [Cleate_colsum] #計算式_代入 concatenate($formula_colsum,(RC[-3]+RC[-2]+RC[-1])) concatenate($formula_colsum_q,(RC[-5]+RC[-1])) #concatenate($formula_colsum_y,(RC[-10]+RC[-1])) concatenate($formula_colsum_y,(RC[-12]+RC[-11]+RC[-10]+RC[-9]+RC[-8]+RC[-7]+RC[-6]+RC[-5]+RC[-4]+RC[-3]+RC[-2]+RC[-1])) #putformula($_row,9,$formula_colsum)#1Q計 #putformula($_row,13,$formula_colsum)#2Q計 #putformula($_row,14,$formula_colsum_q)#上期計 #putformula($_row,18,$formula_colsum)#3Q計 #putformula($_row,22,$formula_colsum)#4Q計 #putformula($_row,23,$formula_colsum_q)#下期計 putformula($_row,18,$formula_colsum_y)#年度計 #------------------------------------------------- # 横計粗利処理 #------------------------------------------------- [Cleate_colarasum] #計算式_代入 #concatenate($formula_arasum,IF(ISERROR((((R[-2]C)-((R[-2]C)-(R[-1]C)))/(R[-2]C))*100)\x2c0\x2cROUND((((R[-2]C)-((R[-2]C)-(R[-1]C)))/(R[-2]C))*100\x2c2)\x26\x22\x25\x22)) concatenate($formula_arasum,IF(R[-2]C\x3d0\x2c0\x2cROUND((((R[-2]C)-((R[-2]C)-(R[-1]C)))/(R[-2]C))*100\x2c2))) #putformula($_row,9,$formula_arasum)#1Q計 #putformula($_row,13,$formula_arasum)#2Q計 #putformula($_row,14,$formula_arasum)#上期計 #putformula($_row,18,$formula_arasum)#3Q計 #putformula($_row,22,$formula_arasum)#4Q計 #putformula($_row,23,$formula_arasum)#下期計 putformula($_row,18,$formula_arasum)#年度計 #------------------------------------------------- # 横計対比処理 #------------------------------------------------- [Cleate_coltaihisum] #$zen_row1,-2,-3 #$zen_row2,3,5 #計算式_代入 #concatenate($formula_taihi,IF(ISERROR(((R[,$zen_row1,]C)/(R[,$zen_row2,]C))*100)\x2c0\x2cROUND(((R[,$zen_row1,]C)/(R[,$zen_row2,]C))*100\x2c2)\x26\x22\x25\x22)) concatenate($formula_taihi,IF(R[,$zen_row2,]C\x3d0\x2c0\x2cROUND(((R[,$zen_row1,]C)/(R[,$zen_row2,]C))*100\x2c2))) putformula($_row,20,$formula_taihi) #------------------------------------------------- # Key1設定ルーチン #------------------------------------------------- [KeyInfo_key1] keyvalue(dummy) keybreakproc(GroupBegin_key1,GroupEnd_key1) #------------------------------------------------- # Key1開始時 #------------------------------------------------- [GroupBegin_key1] deforgpage(blank) #Importするかどうか,FormatNormalするかどうか pageopen(true,false) deforgpage(formats) resetorg() #ヘッダ作成処理 subroutine(CleateHeader) #------------------------------------------------- # Key1終了時 #------------------------------------------------- [GroupEnd_key1] #グラフ作成処理 subroutine(SettingGraphData) pageclose(false) #------------------------------------------------- # Key2設定ルーチン #------------------------------------------------- [KeyInfo_key2] keyvalue(@rs1.cd) keybreakproc(GroupBegin_key2,GroupEnd_key2) #------------------------------------------------- # Key2開始時 #------------------------------------------------- [GroupBegin_key2] formatspecialrow($_row,0,7,1) #見出し行処理 putcell($_row,1,@rs1.cd) putcell($_row,2,@rs1.han) putline(,) #------------------------------------------------- # Key2終了時 #------------------------------------------------- [GroupEnd_key2] #------------------------------------------------- # 明細表示処理 #------------------------------------------------- [PrintNormal] formatspecialrow($_row,0,8,4) #1行目処理 #横計処理 #subroutine(Cleate_colsum) #subroutine(Cleate_coltaihisum) putcell($_row,2,@rs1.sir_cd) putcell($_row,3,@rs1.sir_rnm) #年度に対象年をセット setdouble($hyouji_y,$taisyo_y) concatenate($nendo,$hyouji_y,年度) putcell($_row,4,$nendo) #1行目処理 putcell($_row,5,仕入額) putline(,,,,,@rs1.sir01#,@rs1.sir02#,@rs1.sir03#,@rs1.sir04#,@rs1.sir05#,@rs1.sir06#,@rs1.sir07#,@rs1.sir08#,@rs1.sir09#,@rs1.sir10#,@rs1.sir11#,@rs1.sir12#,@rs1.sir_kei#,@rs1.sir_kei_ly#,@rs1.sir_taihi#) #2行目処理 #subroutine(Cleate_colsum) #subroutine(Cleate_coltaihisum) putcell($_row,5,売上額) putline(,,,,,@rs1.uri01#,@rs1.uri02#,@rs1.uri03#,@rs1.uri04#,@rs1.uri05#,@rs1.uri06#,@rs1.uri07#,@rs1.uri08#,@rs1.uri09#,@rs1.uri10#,@rs1.uri11#,@rs1.uri12#,@rs1.uri_kei#,@rs1.uri_kei_ly#,@rs1.uri_taihi#) #3行目処理 #横計処理 #subroutine(Cleate_colsum) #subroutine(Cleate_coltaihisum) putcell($_row,5,粗利額) putline(,,,,,@rs1.arari01#,@rs1.arari02#,@rs1.arari03#,@rs1.arari04#,@rs1.arari05#,@rs1.arari06#,@rs1.arari07#,@rs1.arari08#,@rs1.arari09#,@rs1.arari10#,@rs1.arari11#,@rs1.arari12#,@rs1.arari_kei#,@rs1.arari_kei_ly#,@rs1.arari_taihi#) #4行目処理 #横計粗利処理 #subroutine(Cleate_colarasum) putcell($_row,5,粗利率) putline(,,,,,@rs1.arari01_ritu#,@rs1.arari02_ritu#,@rs1.arari03_ritu#,@rs1.arari04_ritu#,@rs1.arari05_ritu#,@rs1.arari06_ritu#,@rs1.arari07_ritu#,@rs1.arari08_ritu#,@rs1.arari09_ritu#,@rs1.arari10_ritu#,@rs1.arari11_ritu#,@rs1.arari12_ritu#,@rs1.arariritu_kei#,@rs1.arariritu_kei_ly#)