- 파일 M02_CF_* → M02_DF_* · css m02-cf/m01-cf → m02-df · 서버 길 /api/m02/cf → /api/m02/df · 키 CF- → DF- · 사용자 요소 UE- 그대로 - _sample · .gitignore(_data git 밖) 옮김 · DataFlow 는 CostFlow 를 import 안 함 - 시험 test_m02_df_model · router · sample · inputpanel_build(옛 cf 시험은 그대로) - 서버 등록은 sub1 몫 — M02_MasterTemplete.DataFlow.M02_DF_Router 의 router Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VBToTCGk5dqDKeXCEP3vhk
786 lines
16 KiB
JSON
786 lines
16 KiB
JSON
{
|
||
"key": "SAMPLE-masonry",
|
||
"name": "견본 · 돌쌓기 메쌓기(인력)",
|
||
"resultUnit": "원/㎡",
|
||
"boxes": [
|
||
{
|
||
"id": "in-var",
|
||
"kind": "input",
|
||
"name": "쌓기 조건",
|
||
"color": "#2f80ed",
|
||
"unit": "-",
|
||
"x": 40,
|
||
"y": 40,
|
||
"input": {
|
||
"mode": "variable",
|
||
"elements": [],
|
||
"variables": [
|
||
{
|
||
"name": "뒷길이",
|
||
"type": "choice",
|
||
"unit": "㎝",
|
||
"example": 30,
|
||
"choices": [25, 30, 35, 45, 55, 60, 75]
|
||
},
|
||
{
|
||
"name": "돌",
|
||
"type": "choice",
|
||
"unit": "-",
|
||
"example": "깬돌",
|
||
"choices": ["깬잡석", "견치돌", "깬돌", "호박돌 및 야면석"]
|
||
},
|
||
{
|
||
"name": "쌓기",
|
||
"type": "choice",
|
||
"unit": "-",
|
||
"example": "골쌓기",
|
||
"choices": ["골쌓기", "켜쌓기"]
|
||
},
|
||
{
|
||
"name": "높이",
|
||
"type": "number",
|
||
"unit": "m",
|
||
"example": 4.5
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"id": "in-poom",
|
||
"kind": "input",
|
||
"name": "메쌓기 품표",
|
||
"color": "#2f80ed",
|
||
"unit": "-",
|
||
"x": 40,
|
||
"y": 300,
|
||
"input": {
|
||
"mode": "group",
|
||
"group": "소요량",
|
||
"elements": [],
|
||
"table": {
|
||
"key": "QF000421"
|
||
},
|
||
"variables": []
|
||
}
|
||
},
|
||
{
|
||
"id": "in-rate",
|
||
"kind": "input",
|
||
"name": "높이 증가율표",
|
||
"color": "#2f80ed",
|
||
"unit": "-",
|
||
"x": 40,
|
||
"y": 460,
|
||
"input": {
|
||
"mode": "group",
|
||
"group": "소요량",
|
||
"elements": [],
|
||
"table": {
|
||
"key": "QF000422"
|
||
},
|
||
"variables": []
|
||
}
|
||
},
|
||
{
|
||
"id": "in-labor",
|
||
"kind": "input",
|
||
"name": "인력",
|
||
"color": "#2f80ed",
|
||
"unit": "원/일",
|
||
"x": 40,
|
||
"y": 620,
|
||
"input": {
|
||
"mode": "group",
|
||
"group": "인력",
|
||
"variables": [],
|
||
"elements": [
|
||
{
|
||
"ref": "LB000033",
|
||
"name": "석공",
|
||
"spec": "",
|
||
"unit": "원/일"
|
||
},
|
||
{
|
||
"ref": "LB000002",
|
||
"name": "보통인부",
|
||
"spec": "",
|
||
"unit": "원/일"
|
||
}
|
||
]
|
||
}
|
||
},
|
||
{
|
||
"id": "fn-rate",
|
||
"kind": "function",
|
||
"name": "증가율 찾기",
|
||
"color": "#7b4fd6",
|
||
"unit": "%",
|
||
"x": 340,
|
||
"y": 420,
|
||
"func": {
|
||
"sheet": {
|
||
"id": "cf-rate",
|
||
"이름": "증가율 찾기",
|
||
"칸": {
|
||
"A1": {
|
||
"값": "이름"
|
||
},
|
||
"B1": {
|
||
"값": "값"
|
||
},
|
||
"C1": {
|
||
"값": "설명"
|
||
},
|
||
"A2": {
|
||
"값": "높이"
|
||
},
|
||
"C2": {
|
||
"값": "받는 값 · m"
|
||
},
|
||
"A3": {
|
||
"값": "표에서 찾은 증가율"
|
||
},
|
||
"B3": {
|
||
"식": "SUMIFS($G$2:$G$100,$E$2:$E$100,\"<\"&B2,$F$2:$F$100,\">=\"&B2)"
|
||
},
|
||
"C3": {
|
||
"값": "높이가 「아래 < 높이 ≤ 위」 인 줄"
|
||
},
|
||
"A4": {
|
||
"값": "증가율"
|
||
},
|
||
"B4": {
|
||
"식": "IF(B2<=3,0,B3)"
|
||
},
|
||
"C4": {
|
||
"값": "3m 까지는 할증 없음"
|
||
}
|
||
}
|
||
},
|
||
"inputs": [
|
||
{
|
||
"port": "높이",
|
||
"cell": "B2"
|
||
},
|
||
{
|
||
"port": "증가율표",
|
||
"cell": "E1"
|
||
}
|
||
],
|
||
"variables": [],
|
||
"output": {
|
||
"cell": "B4",
|
||
"name": "증가율",
|
||
"unit": "%"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"id": "fn-poom0",
|
||
"kind": "function",
|
||
"name": "석공 품",
|
||
"color": "#7b4fd6",
|
||
"unit": "인/㎡",
|
||
"x": 640,
|
||
"y": 80,
|
||
"func": {
|
||
"sheet": {
|
||
"id": "cf-poom0",
|
||
"이름": "석공 품",
|
||
"칸": {
|
||
"A1": {
|
||
"값": "이름"
|
||
},
|
||
"B1": {
|
||
"값": "값"
|
||
},
|
||
"C1": {
|
||
"값": "설명"
|
||
},
|
||
"A2": {
|
||
"값": "뒷길이"
|
||
},
|
||
"C2": {
|
||
"값": "받는 값 · ㎝"
|
||
},
|
||
"A3": {
|
||
"값": "돌"
|
||
},
|
||
"C3": {
|
||
"값": "받는 값"
|
||
},
|
||
"A4": {
|
||
"값": "쌓기"
|
||
},
|
||
"C4": {
|
||
"값": "받는 값"
|
||
},
|
||
"A5": {
|
||
"값": "증가율"
|
||
},
|
||
"C5": {
|
||
"값": "받는 값 · %"
|
||
},
|
||
"A6": {
|
||
"값": "표에서 찾은 품"
|
||
},
|
||
"B6": {
|
||
"식": "SUMIFS($H$2:$H$200,$E$2:$E$200,B2,$F$2:$F$200,B3,$G$2:$G$200,B4)"
|
||
},
|
||
"C6": {
|
||
"값": "세 조건이 맞는 줄의 품"
|
||
},
|
||
"A7": {
|
||
"값": "석공 품"
|
||
},
|
||
"B7": {
|
||
"식": "B6*(1+B5/100)"
|
||
},
|
||
"C7": {
|
||
"값": "높이 할증을 얹음"
|
||
}
|
||
}
|
||
},
|
||
"inputs": [
|
||
{
|
||
"port": "뒷길이",
|
||
"cell": "B2"
|
||
},
|
||
{
|
||
"port": "돌",
|
||
"cell": "B3"
|
||
},
|
||
{
|
||
"port": "쌓기",
|
||
"cell": "B4"
|
||
},
|
||
{
|
||
"port": "증가율",
|
||
"cell": "B5"
|
||
},
|
||
{
|
||
"port": "품표",
|
||
"cell": "E1"
|
||
}
|
||
],
|
||
"variables": [],
|
||
"output": {
|
||
"cell": "B7",
|
||
"name": "석공 품",
|
||
"unit": "인/㎡"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"id": "fn-poom1",
|
||
"kind": "function",
|
||
"name": "보통인부 품",
|
||
"color": "#7b4fd6",
|
||
"unit": "인/㎡",
|
||
"x": 640,
|
||
"y": 300,
|
||
"func": {
|
||
"sheet": {
|
||
"id": "cf-poom1",
|
||
"이름": "보통인부 품",
|
||
"칸": {
|
||
"A1": {
|
||
"값": "이름"
|
||
},
|
||
"B1": {
|
||
"값": "값"
|
||
},
|
||
"C1": {
|
||
"값": "설명"
|
||
},
|
||
"A2": {
|
||
"값": "뒷길이"
|
||
},
|
||
"C2": {
|
||
"값": "받는 값 · ㎝"
|
||
},
|
||
"A3": {
|
||
"값": "돌"
|
||
},
|
||
"C3": {
|
||
"값": "받는 값"
|
||
},
|
||
"A4": {
|
||
"값": "쌓기"
|
||
},
|
||
"C4": {
|
||
"값": "받는 값"
|
||
},
|
||
"A5": {
|
||
"값": "증가율"
|
||
},
|
||
"C5": {
|
||
"값": "받는 값 · %"
|
||
},
|
||
"A6": {
|
||
"값": "표에서 찾은 품"
|
||
},
|
||
"B6": {
|
||
"식": "SUMIFS($I$2:$I$200,$E$2:$E$200,B2,$F$2:$F$200,B3,$G$2:$G$200,B4)"
|
||
},
|
||
"C6": {
|
||
"값": "세 조건이 맞는 줄의 품"
|
||
},
|
||
"A7": {
|
||
"값": "보통인부 품"
|
||
},
|
||
"B7": {
|
||
"식": "B6*(1+B5/100)"
|
||
},
|
||
"C7": {
|
||
"값": "높이 할증을 얹음"
|
||
}
|
||
}
|
||
},
|
||
"inputs": [
|
||
{
|
||
"port": "뒷길이",
|
||
"cell": "B2"
|
||
},
|
||
{
|
||
"port": "돌",
|
||
"cell": "B3"
|
||
},
|
||
{
|
||
"port": "쌓기",
|
||
"cell": "B4"
|
||
},
|
||
{
|
||
"port": "증가율",
|
||
"cell": "B5"
|
||
},
|
||
{
|
||
"port": "품표",
|
||
"cell": "E1"
|
||
}
|
||
],
|
||
"variables": [],
|
||
"output": {
|
||
"cell": "B7",
|
||
"name": "보통인부 품",
|
||
"unit": "인/㎡"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"id": "fn-pay0",
|
||
"kind": "function",
|
||
"name": "석공 노무비",
|
||
"color": "#7b4fd6",
|
||
"unit": "원/㎡",
|
||
"x": 940,
|
||
"y": 80,
|
||
"func": {
|
||
"sheet": {
|
||
"id": "cf-pay0",
|
||
"이름": "석공 노무비",
|
||
"칸": {
|
||
"A1": {
|
||
"값": "이름"
|
||
},
|
||
"B1": {
|
||
"값": "값"
|
||
},
|
||
"C1": {
|
||
"값": "설명"
|
||
},
|
||
"A2": {
|
||
"값": "석공 품"
|
||
},
|
||
"C2": {
|
||
"값": "받는 값 · 인/㎡"
|
||
},
|
||
"A3": {
|
||
"값": "석공 노임"
|
||
},
|
||
"C3": {
|
||
"값": "받는 값 · 원/인"
|
||
},
|
||
"A4": {
|
||
"값": "석공 노무비"
|
||
},
|
||
"B4": {
|
||
"식": "B2*B3"
|
||
},
|
||
"C4": {
|
||
"값": "품 × 노임"
|
||
}
|
||
}
|
||
},
|
||
"inputs": [
|
||
{
|
||
"port": "석공 품",
|
||
"cell": "B2"
|
||
},
|
||
{
|
||
"port": "석공 노임",
|
||
"cell": "B3"
|
||
}
|
||
],
|
||
"variables": [],
|
||
"output": {
|
||
"cell": "B4",
|
||
"name": "석공 노무비",
|
||
"unit": "원/㎡"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"id": "fn-pay1",
|
||
"kind": "function",
|
||
"name": "보통인부 노무비",
|
||
"color": "#7b4fd6",
|
||
"unit": "원/㎡",
|
||
"x": 940,
|
||
"y": 300,
|
||
"func": {
|
||
"sheet": {
|
||
"id": "cf-pay1",
|
||
"이름": "보통인부 노무비",
|
||
"칸": {
|
||
"A1": {
|
||
"값": "이름"
|
||
},
|
||
"B1": {
|
||
"값": "값"
|
||
},
|
||
"C1": {
|
||
"값": "설명"
|
||
},
|
||
"A2": {
|
||
"값": "보통인부 품"
|
||
},
|
||
"C2": {
|
||
"값": "받는 값 · 인/㎡"
|
||
},
|
||
"A3": {
|
||
"값": "보통인부 노임"
|
||
},
|
||
"C3": {
|
||
"값": "받는 값 · 원/인"
|
||
},
|
||
"A4": {
|
||
"값": "보통인부 노무비"
|
||
},
|
||
"B4": {
|
||
"식": "B2*B3"
|
||
},
|
||
"C4": {
|
||
"값": "품 × 노임"
|
||
}
|
||
}
|
||
},
|
||
"inputs": [
|
||
{
|
||
"port": "보통인부 품",
|
||
"cell": "B2"
|
||
},
|
||
{
|
||
"port": "보통인부 노임",
|
||
"cell": "B3"
|
||
}
|
||
],
|
||
"variables": [],
|
||
"output": {
|
||
"cell": "B4",
|
||
"name": "보통인부 노무비",
|
||
"unit": "원/㎡"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"id": "fn-sum",
|
||
"kind": "function",
|
||
"name": "노무비 합",
|
||
"color": "#7b4fd6",
|
||
"unit": "원/㎡",
|
||
"x": 1240,
|
||
"y": 190,
|
||
"func": {
|
||
"sheet": {
|
||
"id": "cf-sum",
|
||
"이름": "노무비 합",
|
||
"칸": {
|
||
"A1": {
|
||
"값": "이름"
|
||
},
|
||
"B1": {
|
||
"값": "값"
|
||
},
|
||
"C1": {
|
||
"값": "설명"
|
||
},
|
||
"A2": {
|
||
"값": "석공 노무비"
|
||
},
|
||
"C2": {
|
||
"값": "받는 값"
|
||
},
|
||
"A3": {
|
||
"값": "보통인부 노무비"
|
||
},
|
||
"C3": {
|
||
"값": "받는 값"
|
||
},
|
||
"A4": {
|
||
"값": "노무비"
|
||
},
|
||
"B4": {
|
||
"식": "B2+B3"
|
||
},
|
||
"C4": {
|
||
"값": "둘을 더함"
|
||
}
|
||
}
|
||
},
|
||
"inputs": [
|
||
{
|
||
"port": "석공 노무비",
|
||
"cell": "B2"
|
||
},
|
||
{
|
||
"port": "보통인부 노무비",
|
||
"cell": "B3"
|
||
}
|
||
],
|
||
"variables": [],
|
||
"output": {
|
||
"cell": "B4",
|
||
"name": "노무비",
|
||
"unit": "원/㎡"
|
||
}
|
||
}
|
||
},
|
||
{
|
||
"id": "out-pay",
|
||
"kind": "output",
|
||
"name": "노무비",
|
||
"color": "#27ae60",
|
||
"unit": "원/㎡",
|
||
"x": 1520,
|
||
"y": 190,
|
||
"output": {
|
||
"cost": "노무비",
|
||
"unit": "원/㎡"
|
||
}
|
||
}
|
||
],
|
||
"links": [
|
||
{
|
||
"id": "l1",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "높이"
|
||
},
|
||
"to": {
|
||
"box": "fn-rate",
|
||
"name": "높이"
|
||
}
|
||
},
|
||
{
|
||
"id": "l2",
|
||
"from": {
|
||
"box": "in-rate",
|
||
"name": "표"
|
||
},
|
||
"to": {
|
||
"box": "fn-rate",
|
||
"name": "증가율표"
|
||
}
|
||
},
|
||
{
|
||
"id": "l3",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "뒷길이"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom0",
|
||
"name": "뒷길이"
|
||
}
|
||
},
|
||
{
|
||
"id": "l4",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "돌"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom0",
|
||
"name": "돌"
|
||
}
|
||
},
|
||
{
|
||
"id": "l5",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "쌓기"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom0",
|
||
"name": "쌓기"
|
||
}
|
||
},
|
||
{
|
||
"id": "l6",
|
||
"from": {
|
||
"box": "fn-rate",
|
||
"name": "증가율"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom0",
|
||
"name": "증가율"
|
||
}
|
||
},
|
||
{
|
||
"id": "l7",
|
||
"from": {
|
||
"box": "in-poom",
|
||
"name": "표"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom0",
|
||
"name": "품표"
|
||
}
|
||
},
|
||
{
|
||
"id": "l8",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "뒷길이"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom1",
|
||
"name": "뒷길이"
|
||
}
|
||
},
|
||
{
|
||
"id": "l9",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "돌"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom1",
|
||
"name": "돌"
|
||
}
|
||
},
|
||
{
|
||
"id": "l10",
|
||
"from": {
|
||
"box": "in-var",
|
||
"name": "쌓기"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom1",
|
||
"name": "쌓기"
|
||
}
|
||
},
|
||
{
|
||
"id": "l11",
|
||
"from": {
|
||
"box": "fn-rate",
|
||
"name": "증가율"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom1",
|
||
"name": "증가율"
|
||
}
|
||
},
|
||
{
|
||
"id": "l12",
|
||
"from": {
|
||
"box": "in-poom",
|
||
"name": "표"
|
||
},
|
||
"to": {
|
||
"box": "fn-poom1",
|
||
"name": "품표"
|
||
}
|
||
},
|
||
{
|
||
"id": "l13",
|
||
"from": {
|
||
"box": "fn-poom0",
|
||
"name": "석공 품"
|
||
},
|
||
"to": {
|
||
"box": "fn-pay0",
|
||
"name": "석공 품"
|
||
}
|
||
},
|
||
{
|
||
"id": "l14",
|
||
"from": {
|
||
"box": "in-labor",
|
||
"name": "석공"
|
||
},
|
||
"to": {
|
||
"box": "fn-pay0",
|
||
"name": "석공 노임"
|
||
}
|
||
},
|
||
{
|
||
"id": "l15",
|
||
"from": {
|
||
"box": "fn-poom1",
|
||
"name": "보통인부 품"
|
||
},
|
||
"to": {
|
||
"box": "fn-pay1",
|
||
"name": "보통인부 품"
|
||
}
|
||
},
|
||
{
|
||
"id": "l16",
|
||
"from": {
|
||
"box": "in-labor",
|
||
"name": "보통인부"
|
||
},
|
||
"to": {
|
||
"box": "fn-pay1",
|
||
"name": "보통인부 노임"
|
||
}
|
||
},
|
||
{
|
||
"id": "l17",
|
||
"from": {
|
||
"box": "fn-pay0",
|
||
"name": "석공 노무비"
|
||
},
|
||
"to": {
|
||
"box": "fn-sum",
|
||
"name": "석공 노무비"
|
||
}
|
||
},
|
||
{
|
||
"id": "l18",
|
||
"from": {
|
||
"box": "fn-pay1",
|
||
"name": "보통인부 노무비"
|
||
},
|
||
"to": {
|
||
"box": "fn-sum",
|
||
"name": "보통인부 노무비"
|
||
}
|
||
},
|
||
{
|
||
"id": "l19",
|
||
"from": {
|
||
"box": "fn-sum",
|
||
"name": "노무비"
|
||
},
|
||
"to": {
|
||
"box": "out-pay",
|
||
"name": "값"
|
||
}
|
||
}
|
||
],
|
||
"userElements": []
|
||
}
|