Only this pageAll pages
Powered by GitBook
Couldn't generate the PDF for 189 pages, generation stopped at 100.
Extend with 50 more pages.
1 of 100

๐Ÿ‡ฐ๐Ÿ‡ท ํ•œ๊ตญ์–ด

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

SmallBuilder line items

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

์กฐ์ง ํ†ตํ™” ์„ค์ •

SmallBuilder๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ํšŒ์‚ฌ์˜ ํ†ตํ™” ์„ค์ •์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์กฐ์ง์ด ์ฒ˜์Œ ์ƒ์„ฑ๋œ ํ›„ ํ†ตํ™”๊ฐ€ null๋กœ ์„ค์ •๋˜์–ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ†ตํ™”๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์„ค์ •๋˜์ง€ ์•Š์œผ๋ฉด SmallBuilder๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์กฐ์ง์˜ ํ†ตํ™”๊ฐ€ ์ œ๋Œ€๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

๋‹ค์ค‘ ํ†ตํ™”๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ๊ณผ์ •์„ ํ™•์ธํ•˜์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค.

  1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ํšŒ์‚ฌ๋ฅผ ์ž…๋ ฅํ•œ ํ›„ ํšŒ์‚ฌ ์ •๋ณด๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  2. ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. ํ†ตํ™” ์„ค์ •์—์„œ ์‚ฌ์šฉ ํ†ตํ™”๊ฐ€ ์ œ๋Œ€๋กœ ์„ ํƒ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    null๋กœ ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, ์˜ฌ๋ฐ”๋ฅธ ํ†ตํ™”๋ฅผ ์„ ํƒํ•ด ์ฃผ์„ธ์š”.

SmallBuilder ํ—ฌํ”„

๋ณธ ๋ฌธ์„œ๋Š” ์„ธ์ผ์ฆˆํฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ๋” ์‰ฝ๊ฒŒ SmallBuilder์— ์ต์ˆ™ํ•ด์งˆ ์ˆ˜ ์žˆ๋„๋ก ๋‹ค์–‘ํ•œ ์ •๋ณด๋ฅผ ๋‹ด๊ณ ์žˆ์Šต๋‹ˆ๋‹ค.

SmallBuilder๋Š” ์œˆ๋“œ๋ฐ€์†Œํ”„ํŠธ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์„ธ์ผ์ฆˆํฌ์Šค ์• ๋“œ์˜จ ํŒจํ‚ค์ง€๋กœ ์„ธ์ผ์ฆˆํฌ์Šค ๊ตฌํ˜„ ๊ณผ์ •์—์„œ ์ž์ฃผ ์ ‘ํ•˜๋Š” ์ปค์Šคํ…€ ๊ธฐ๋Šฅ์„ ์ฝ”๋”ฉ์—†์ด ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ๋„๊ตฌ๋“ค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

ํŒจํ‚ค์ง€ ์„ค์น˜

AppExchange์—์„œ SmallBuilder๋ฅผ ์กฐ์ง์— ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

๋ผ์ด์„ ์Šค ๋ฐ ๊ถŒํ•œ ํ• ๋‹น

SmallBuilder๋Š” 10๊ฐœ์˜ ๋ผ์ด์„ ์Šค๋ฅผ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ๊ฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ œํ’ˆ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก SmallBuilder ๊ด€๋ จ ๋ผ์ด์„ ์Šค์™€ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์กฐ์ง ํ†ตํ™” ์„ค์ •

์กฐ์ง์ด ์ฒ˜์Œ ์ƒ์„ฑ๋œ ํ›„ ํ†ตํ™”๊ฐ€ null๋กœ ์„ค์ •๋˜์–ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ†ตํ™”๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์„ค์ •๋˜์ง€ ์•Š์œผ๋ฉด SmallBuilder๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์กฐ์ง์˜ ํ†ตํ™”๊ฐ€ ์ œ๋Œ€๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

๋ฒˆ์—ญ ํ™œ์„ฑํ™”

SmallBuilder ์ œํ’ˆ๋“ค์€ ์˜์–ด์™€ ํ•œ๊ตญ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์–ธ์–ด๋Š” ์˜์–ด์ด๋ฉฐ, ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์กฐ์ง์—์„œ ๋ฒˆ์—ญ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์—ฐ๊ฒฐ๋œ ์•ฑ ์„ค์ •

SmallBuilder ์ œํ’ˆ์—์„œ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ๋ฒ„ํŠผ ์ถ”๊ฐ€, ํƒญ ์ƒ์„ฑ ๋“ฑ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ด€๋ จ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด SmallBuilder์— ์—ฐ๊ฒฐ๋œ ์•ฑ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์กฐ์ง ํ†ตํ™” ์„ค์ •

SmallBuilder๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ํšŒ์‚ฌ์˜ ํ†ตํ™” ์„ค์ •์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

์กฐ์ง์ด ์ฒ˜์Œ ์ƒ์„ฑ๋œ ํ›„ ํ†ตํ™”๊ฐ€ null๋กœ ์„ค์ •๋˜์–ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ†ตํ™”๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์„ค์ •๋˜์ง€ ์•Š์œผ๋ฉด SmallBuilder๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์กฐ์ง์˜ ํ†ตํ™”๊ฐ€ ์ œ๋Œ€๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

๋‹ค์ค‘ ํ†ตํ™”๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ๊ณผ์ •์„ ํ™•์ธํ•˜์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค.

  1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ํšŒ์‚ฌ๋ฅผ ์ž…๋ ฅํ•œ ํ›„ ํšŒ์‚ฌ ์ •๋ณด๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  2. ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. ํ†ตํ™” ์„ค์ •์—์„œ ์‚ฌ์šฉ ํ†ตํ™”๊ฐ€ ์ œ๋Œ€๋กœ ์„ ํƒ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    null๋กœ ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, ์˜ฌ๋ฐ”๋ฅธ ํ†ตํ™”๋ฅผ ์„ ํƒํ•ด ์ฃผ์„ธ์š”.

๋ฒˆ์—ญ ํ™œ์„ฑํ™”

SmallBuilder Line Items๋Š” ์˜์–ด์™€ ํ•œ๊ตญ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์–ธ์–ด๋Š” ์˜์–ด์ด๋ฉฐ, ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์กฐ์ง์—์„œ ๋ฒˆ์—ญ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ๋ฒˆ์—ญ์„ ์ž…๋ ฅํ•œ ํ›„ ๋ฒˆ์—ญ ์–ธ์–ด ์„ค์ •์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  2. ํ•œ๊ตญ์–ด ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  3. ํ™œ์„ฑ์„ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.

๋ผ์ด์„ ์Šค ๋ฐ ๊ถŒํ•œ ํ• ๋‹น

SmallBuilder Line Items๋Š” 10๊ฐœ์˜ ๋ผ์ด์„ ์Šค๋ฅผ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ๊ฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ œํ’ˆ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก SmallBuilder Line Items ๋ผ์ด์„ ์Šค์™€ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ƒŒ๋“œ๋ฐ•์Šค์—์„œ๋Š” ๋ผ์ด์„ ์Šค ์ œํ•œ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์—, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ผ์ด์„ ์Šค๋ฅผ ํ• ๋‹นํ•˜์ง€ ์•Š์•„๋„ ์ œํ’ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ผ์ด์„ ์Šค ํ• ๋‹น

SmallBuilder Line Items ์ •์‹ ๋ผ์ด์„ ์Šค๋Š” ์‚ฌ์šฉ์ž๋‹น ๋ถ€์—ฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ผ์ด์„ผ์Šค๋ฅผ ๋ถ€์—ฌํ•˜๋Š” ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

์—ฐ๊ฒฐ๋œ ์•ฑ ์„ค์ •

SmallBuilder ์ œํ’ˆ์„ ์„ค์ •ํ•˜๋Š” ๋นŒ๋” ํ™”๋ฉด์—์„œ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ๋ฒ„ํŠผ ์ถ”๊ฐ€, ํƒญ ์ƒ์„ฑ ๋“ฑ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ด€๋ จ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด SmallBuilder์— ์—ฐ๊ฒฐ๋œ ์•ฑ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๋งŒ์•ฝ SmallBuilder Line Items ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, SmallBuilder Line Items OAuth๋ฅผ ์„ค์ •ํ•˜์„ธ์š”.

Step 1: ํ—ˆ์šฉ๋œ ์‚ฌ์šฉ์ž ์„ค์ •

v 1.38

๐Ÿ“ฆ Package Upgrade

๐Ÿ—“๏ธ Release Date

2025. 4. 8.

๐Ÿ› Bug Fixes

๋นŒ๋”

SmallBuilder Line Items๋Š” ๋นŒ๋”์—์„œ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค. ๋นŒ๋”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งž์ถคํ˜• ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌ์„ฑํ•˜์„ธ์š”.

๋นŒ๋” ์‹œ์ž‘ํ•˜๊ธฐ

์—ฐ๊ฒฐ๋œ ์•ฑ ์„ค์ •

SmallBuilder Line Items์˜ ๋นŒ๋” ํ™”๋ฉด์—์„œ ๋ฒ„ํŠผ ์ƒ์„ฑ ๋ฐ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ๋ฒ„ํŠผ ์ถ”๊ฐ€ ๋“ฑ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ด€๋ จ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด SmallBuilder Line Items์—์„œ ์ œ๊ณตํ•˜๋Š” ์—ฐ๊ฒฐ๋œ ์•ฑ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

Step 1: ํ—ˆ์šฉ๋œ ์‚ฌ์šฉ์ž ์„ค์ •

  1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ์—ฐ๊ฒฐ๋œ ์•ฑ์„ ์ž…๋ ฅํ•œ ํ›„ ์—ฐ๊ฒฐ๋œ ์•ฑ ๊ด€๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ์„ค์ • (Default Setting)

๋นŒ๋” ์ด๋ฆ„, ์„ค๋ช… ๋“ฑ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์„ค์ •๊ณผ ํ•จ๊ป˜, ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”๋กœ ๋ณด์—ฌ์ค„์ง€ ์—ฌ๋ถ€, ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์š”์•ฝ์„ ํ‘œ์‹œํ• ์ง€ ์—ฌ๋ถ€ ๋“ฑ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ ์„ค์ •์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์„ค์ •๋“ค์€ ๋นŒ๋”์˜ ์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ ์ œ๊ณตํ•˜๋Š” ์„ค์ •

์‹œ์ž‘ํ•˜๊ธฐ ์ „์—

ํŒจํ‚ค์ง€ ์„ค์น˜

AppExchange์—์„œ SmallBuilder Line Items๋ฅผ ์กฐ์ง์— ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.


๋ผ์ด์„ ์Šค ๋ฐ ๊ถŒํ•œ ํ• ๋‹น

'25 ์—…๋ฐ์ดํŠธ

๋ฒ„์ „
์—…๋ฐ์ดํŠธ ์‚ฌํ•ญ
  • ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ์„ค์น˜๋œ ํŒจํ‚ค์ง€๋ฅผ ์ž…๋ ฅํ•œ ํ›„ ์„ค์น˜๋œ ํŒจํ‚ค์ง€๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  • SmallBuilder Line Items๋ฅผ ์ฐพ์•„ ๋ผ์ด์„ผ์Šค ๊ด€๋ฆฌ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • ์‚ฌ์šฉ์ž ์ถ”๊ฐ€๋ฅผ ๋ˆŒ๋Ÿฌ ์›ํ•˜๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  • ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • ๊ถŒํ•œ ์ง‘ํ•ฉ ํ• ๋‹น

    SmallBuilder Line Items๋Š” ๋‘ ๊ฐ€์ง€ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ ์—ญํ• ์— ๋งž๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์ ์ ˆํžˆ ํ• ๋‹นํ•ด ์ฃผ์„ธ์š”. ์ œํ’ˆ ๊ธฐ๋Šฅ์„ ์›ํ™œํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    SmallBuilder Line Items Manager

    SmallBuilder Line Items Manager ๊ถŒํ•œ ์ง‘ํ•ฉ์€ ์กฐ์ง ๋‚ด ๊ด€๋ฆฌ์ž๊ฐ€ SmallBuilder Line Items์˜ ์ „์ฒด ๊ด€๋ฆฌ๋ฅผ ์‰ฝ๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹น๋ฐ›์€ ๊ด€๋ฆฌ์ž๋Š” ๋นŒ๋” ์„ค์ •์„ ๊ตฌ์„ฑํ•˜๊ฑฐ๋‚˜ ๋ผ์ธ ์•„์ดํ…œ ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๋“ฑ์˜ ์ž‘์—…์„ ์›ํ™œํ•˜๊ฒŒ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    SmallBuilder Line Items User

    SmallBuilder Line Items User ๊ถŒํ•œ ์ง‘ํ•ฉ์€ ๋ผ์ธ ์•„์ดํ…œ์„ ํŽธ์ง‘ํ•ด์•ผ ํ•˜๋Š” ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๋“ค์ด ์›ํ™œํ•˜๊ฒŒ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฃผ๋กœ ์˜์—… ๋‹ด๋‹น์ž๋‚˜ ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆ์ €์™€ ๊ฐ™์ด ๋ผ์ธ ์•„์ดํ…œ์„ ๋ณด๊ณ  ์ˆ˜์ •ํ•˜๋Š” ์—ญํ• ์„ ๋งก์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค. ์ด ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋Š” ๋ผ์ธ ์•„์ดํ…œ ๋ฐ์ดํ„ฐ๋ฅผ ์‰ฝ๊ฒŒ ์กฐํšŒํ•˜๊ณ  ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ด์„ ์Šค ๋ฐ ๊ถŒํ•œ ํ• ๋‹น
    ์กฐ์ง ํ†ตํ™” ์„ค์ •
    ๋ฒˆ์—ญ ํ™œ์„ฑํ™”
    ์—ฐ๊ฒฐ๋œ ์•ฑ ์„ค์ •
    SmallBuilder Line Items
    SmallBuilder Documents
    SmallBuilder Lists
    SmallBuilder Schedules

    ๋นŒ๋”

    ์กฐํšŒ ์„ ํƒ๊ธฐ ๋ฐ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ํ•„๋“œ๋ฅผ ๋ชจ๋‘ ์‚ญ์ œํ•œ ํ›„ ๋‹ค์‹œ ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ €์žฅํ•  ๋•Œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ โš ๏ธ ๊ธฐ์กด์— ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋œ ์กฐ์ง์—์„œ๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ(SBLI__JunctionBuilder__c) ๊ฐœ์ฒด ์„ค์ •์—์„œ ์•„๋ž˜ ํ™•์ธ ๊ทœ์น™(Validation Rule)์„ ๋น„ํ™œ์„ฑํ™” ํ•˜์„ธ์š”:

    • RequiredLookupFieldsAtLeastOne

    • RequiredLineItemFieldsAtLeastOne

    ํŽธ์ง‘๊ธฐ

    • ์˜ต์…˜ ๊ฐ€๊ฒฉ์ด ์ˆ˜์ •๋œ ์ƒํƒœ์—์„œ ์˜ต์…˜ ์„ ํƒ๊ธฐ๋ฅผ ์—ด๋ฉด ์ˆ˜์ •๋œ ๊ฐ€๊ฒฉ์ด ๋ฐ˜์˜๋˜์ง€ ์•Š๋˜ ํ˜„์ƒ ํ•ด๊ฒฐ

    • ํ•„๋“œ ๊ฐ’์„ ์‚ญ์ œํ•œ ๋’ค ์ €์žฅํ•˜๊ณ  ๋‹ค์‹œ ํŽธ์ง‘๊ธฐ๋ฅผ ์—ด์—ˆ์„ ๋•Œ, ๊ณต๋ž€ ์ƒํƒœ๊ฐ€ ๋ฐ˜์˜๋˜์ง€ ์•Š๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

    ๋ชจ๋ฐ”์ผ ํ™”๋ฉด:

    • ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ์‹œ Recalculation Formula ๊ด€๋ จ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

    • ์ฝ๊ธฐ ์ „์šฉ ํ•„๋“œ์˜ ๊ฐ’์ด ์—†์„ ๋•Œ ํ•˜๋‹จ ํ•„๋“œ์™€ ๊ฐ„๊ฒฉ์ด ์—†์–ด ๊ตฌ๋ถ„์ด ์–ด๋ ค์› ๋˜ ๋ฌธ์ œ ๊ฐœ์„ 

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000T9KrIAK
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด ์„ค์ •ํ•˜๊ธฐ

    ๋นŒ๋” ์ด๋ฆ„๊ณผ ์„ค๋ช… ๋“ฑ ๊ธฐ๋ณธ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์˜ ๊ธฐ๋ณธ ์„ค์ •์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    ์žฅ์น˜์— ๋งž๊ฒŒ ๋ฐ˜์‘ํ˜• ํ™”๋ฉด ์„ค์ •ํ•˜๊ธฐ

    ๋ฐ์Šคํฌํ†ฑ, ๋ชจ๋ฐ”์ผ์— ๋”ฐ๋ผ ๋ฐ˜์‘ํ˜• ํ™”๋ฉด์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ ํ™”๋ฉด ๋น„์œจ ์กฐ์ ˆํ•˜๊ธฐ

    ํ™”๋ฉด ํฌ๊ธฐ๊ฐ€ ์ž‘์€ ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๊ฐ€ ํ•œ๋ˆˆ์— ๋ณด๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ, ํ™”๋ฉด ๋น„์œจ ์„ค์ •์„ ํ†ตํ•ด ํŽธ์ง‘๊ธฐ์˜ ํฌ๊ธฐ๋ฅผ ์กฐ์ ˆํ•ด ๋ณด์„ธ์š”.

    ํŽธ์ง‘๊ธฐ ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ํŽธ์ง‘๊ธฐ์˜ ํƒ€์ดํ‹€๊ณผ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”์„ ์›ํ•˜๋Š” ๋ ˆ์ด๋ธ”๋กœ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์–ธ์–ด์— ๋”ฐ๋ผ ๋ฒˆ์—ญ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ,

    ๊ฐœ์ฒด ๊ตฌ์„ฑํ•˜๊ธฐ

    ๋นŒ๋”์˜ ๊ฐœ์ฒด ์—ฐ๊ฒฐ(Relate Objects) ๋‹จ๊ณ„์—์„œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์‚ฌ์šฉํ•  ๊ฐœ์ฒด๋“ค์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ์˜ ์ƒ์œ„ ๊ฐœ์ฒด์ธ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ถ€๋ชจ ๊ฐœ์ฒด๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์˜ ๊ธฐ๋ฐ˜์ด ๋˜๋Š” ๊ฐœ์ฒด๋กœ, ํ•ด๋‹น ๊ฐœ์ฒด๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํŽธ์ง‘๊ธฐ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด๋Š” ํŽธ์ง‘๊ธฐ์—์„œ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ๋ฅผ ์„ ํƒํ•˜๊ณ  ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•œ ํ›„ ์ €์žฅํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

    ์กฐํšŒ ๊ฐœ์ฒด๋Š” ๋ผ์ธ ์•„์ดํ…œ์ด ์ฐธ์กฐํ•˜๋Š” ๊ฐœ์ฒด๋กœ, ์ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํŽธ์ง‘ ๋ฐ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋” ์‹คํ–‰ ๋ฐฉ๋ฒ•๊ณผ ๋นŒ๋”์˜ ๊ตฌ์„ฑ ์š”์†Œ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋” ์‹œ์ž‘ํ•˜๊ธฐ
    ๊ธฐ๋ณธ ์„ค์ •

    ๋””๋ฐ”์ด์Šค์— ๋งž๊ฒŒ ๋ฐ˜์‘ํ˜• UI ์„ค์ •

    ๋””๋ฐ”์ด์Šค ์œ ํ˜•(๋ฐ์Šคํฌํ†ฑ, ํƒœ๋ธ”๋ฆฟ, ๋ชจ๋ฐ”์ผ)์— ๋”ฐ๋ผ ๋ฐ˜์‘ํ˜• UI๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋””์Šคํ”Œ๋ ˆ์ด ํ™˜๊ฒฝ์— ๋งž์ถฐ ํŽธ์ง‘๊ธฐ์˜ ํฌ๊ธฐ์™€ ๊ตฌ์„ฑ์„ ์กฐ์ •ํ•˜์—ฌ ์ตœ์ ์˜ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํ†ฑ์—์„œ๋Š” ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๊ณ , ๋ชจ๋ฐ”์ผ์—์„œ๋Š” ๊ฐ„์†Œํ™”๋œ UI๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ชจ๋“  ๋””๋ฐ”์ด์Šค์—์„œ ๊ฐ„์†Œํ™”๋œ UI๋กœ ๋ณด์ด๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๋ฉด, ์žฅ์น˜๋ฅผ ๋ชจ๋ฐ”์ผ๋กœ ์„ค์ •ํ•˜์„ธ์š”. ์ด๋ฅผ ํ†ตํ•ด ๋””๋ฐ”์ด์Šค ์ƒ๊ด€ ์—†์ด ๊ฐ„๋‹จํ•˜๊ณ  ์ผ๊ด€๋œ UI๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ํ™”๋ฉด ๋น„์œจ ์กฐ์ •

    ์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์„ค์ •์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

    ํŽธ์ง‘๊ธฐ์˜ ํฌ๊ธฐ ๋น„์œจ์„ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋””์Šคํ”Œ๋ ˆ์ด๊ฐ€ ์ž‘์€ ๊ฒฝ์šฐ UI๊ฐ€ ํ™”๋ฉด์„ ๊ฐ€๋“ ์ฐจ์ง€ํ•˜์—ฌ ๋ถˆํŽธํ•จ์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ, ํ™”๋ฉด ๋น„์œจ์„ ๋‚ฎ๊ฒŒ ์„ค์ •ํ•˜์—ฌ ํŽธ์ง‘๊ธฐ UI์˜ ํฌ๊ธฐ๋ฅผ ์ค„์—ฌ๋ณด์„ธ์š”.

    ์กฐํšŒ ์„ ํƒ๊ธฐ ๊ด€๋ จ ์„ค์ •

    ์กฐํšŒ ์„ ํƒ๊ธฐ์™€ ๊ด€๋ จ๋œ ์„ค์ •์ž…๋‹ˆ๋‹ค. ๋ ˆ์ฝ”๋“œ ์„ ํƒ ๋ฐฉ์‹ ๋ฐ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๊ด€๋ จ ์„ค์ •

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์™€ ๊ด€๋ จ๋œ ์„ค์ •์ž…๋‹ˆ๋‹ค. ํ•˜๋‹จ์— ์š”์•ฝ์„ ํ‘œ์‹œํ•˜๊ฑฐ๋‚˜ ์ฒซ ๋ฒˆ์งธ ์—ด์„ ๊ณ ์ •ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


    ๋ ˆ์ด๋ธ” ์„ค์ •

    ํŽธ์ง‘๊ธฐ ํƒ€์ดํ‹€ ๋ฐ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ” ์„ค์ •

    ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์˜ ํƒ€์ดํ‹€๊ณผ ์ผ๋ถ€ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„์š”์— ๋”ฐ๋ผ ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์‚ฝ์ž…ํ•˜๋ฉด ์‚ฌ์šฉ์ž ์–ธ์–ด์— ๋งž๊ฒŒ ์ž๋™์œผ๋กœ ๋ฒˆ์—ญ์ด ์ ์šฉ๋˜์–ด ๋‹ค์–‘ํ•œ ์–ธ์–ด ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    SmallBuilder Line Items

    ๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ์— ๋Œ€ํ•œ ํ‘œ์ค€ ๋ผ์ธ ์•„์ดํ…œ์„ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•˜๊ณ , Low/No-Code ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด์—๋„ ๋ผ์ธ ์•„์ดํ…œ์„ ์†์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

    SmallBuilder Documents

    ์‰ฝ๊ฒŒ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฌธ์„œ ํ…œํ”Œ๋ฆฟ์„ ์ƒ์„ฑํ•˜๊ณ , ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด๋ฅผ ์ง€์›ํ•˜๋ฉฐ, Low/No-Code ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    SmallBuilder Lists

    ํ•„ํ„ฐ, ๋Œ€๋Ÿ‰ ์ž‘์—…, ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์—์„œ ๋ฐ์ดํ„ฐ ์กฐํšŒ ๋“ฑ์„ ํฌํ•จํ•˜์—ฌ Low/No-Code ๋ฐฉ์‹์œผ๋กœ ๋งž์ถคํ˜• ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    Cover
    Cover
    Cover

    ๋ผ์ด์„ ์Šค ๋ฐ ๊ถŒํ•œ ํ• ๋‹น

    SmallBuilder๋Š” 10๊ฐœ์˜ ๋ผ์ด์„ ์Šค๋ฅผ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ๊ฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ œํ’ˆ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก SmallBuilder ๋ผ์ด์„ ์Šค์™€ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์ƒŒ๋“œ๋ฐ•์Šค์—์„œ๋Š” ๋ผ์ด์„ ์Šค ์ œํ•œ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์—, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ผ์ด์„ ์Šค๋ฅผ ํ• ๋‹นํ•˜์ง€ ์•Š์•„๋„ ์ œํ’ˆ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ด์„ ์Šค ํ• ๋‹น

    SmallBuilder ์ •์‹ ๋ผ์ด์„ ์Šค๋Š” ์‚ฌ์šฉ์ž๋‹น ๋ถ€์—ฌ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ผ์ด์„ผ์Šค๋ฅผ ๋ถ€์—ฌํ•˜๋Š” ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

    1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ์„ค์น˜๋œ ํŒจํ‚ค์ง€๋ฅผ ์ž…๋ ฅํ•œ ํ›„ ์„ค์น˜๋œ ํŒจํ‚ค์ง€๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    2. SmallBuilder {์ œํ’ˆ ์ด๋ฆ„}์„ ์ฐพ์•„ ๋ผ์ด์„ผ์Šค ๊ด€๋ฆฌ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    3. ์‚ฌ์šฉ์ž ์ถ”๊ฐ€๋ฅผ ๋ˆŒ๋Ÿฌ ์›ํ•˜๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    4. ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ๋งŒ์•ฝ SmallBuilder Line Items ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, SmallBuilder Line Items๋ฅผ ์ฐพ์•„ ๋ผ์ด์„ ์Šค ๊ด€๋ฆฌ๋กœ ์ด๋™ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    ๊ถŒํ•œ ์ง‘ํ•ฉ ํ• ๋‹น

    SmallBuilder๋Š” ๋‘ ๊ฐ€์ง€ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ ์—ญํ• ์— ๋งž๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์ ์ ˆํžˆ ํ• ๋‹นํ•ด ์ฃผ์„ธ์š”. ์ œํ’ˆ ๊ธฐ๋Šฅ์„ ์›ํ™œํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    • SmallBuilder {์ œํ’ˆ ์ด๋ฆ„} Manager

      SmallBuilder Manager ๊ถŒํ•œ ์ง‘ํ•ฉ์€ ์ œํ’ˆ์˜ ์ „์ฒด ๊ด€๋ฆฌ๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค. ์ฃผ๋กœ ๊ด€๋ฆฌ์ž์—๊ฒŒ ํ• ๋‹น๋˜๋ฉฐ, ์ด ๊ถŒํ•œ์„ ๋ฐ›์€ ๊ด€๋ฆฌ์ž๋Š” ๋นŒ๋” ์„ค์ • ๊ตฌ์„ฑ, ๋ผ์ธ ์•„์ดํ…œ์— ๋ฒ„ํŠผ ์ถ”๊ฐ€, ๋ฆฌ์ŠคํŠธ ์ œํ’ˆ์—์„œ ํƒญ ์ƒ์„ฑ ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • SmallBuilder {์ œํ’ˆ ์ด๋ฆ„} User SmallBuilder User ๊ถŒํ•œ ์ง‘ํ•ฉ์€ ์ฃผ๋กœ ์˜์—… ๋‹ด๋‹น์ž๋‚˜ ํ”„๋กœ์ ํŠธ ๋งค๋‹ˆ์ €์™€ ๊ฐ™์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค. ์ด ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹น๋ฐ›์€ ์‚ฌ์šฉ์ž๋Š” SmallBuilder๋กœ ๊ตฌํ˜„๋œ ๋ฆฌ์ŠคํŠธ๋‚˜ ๋ฌธ์„œ๋ฅผ ๋ณด๊ณ , ๋ผ์ธ ์•„์ดํ…œ ๋ฐ ์Šค์ผ€์ค„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋งŒ์•ฝ SmallBuilder Line Items ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, SmallBuilder Line Items Manager ๋˜๋Š” SmallBuilder Line Items User ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.

    ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • ์˜์–ด์— ๋Œ€ํ•ด์„œ๋„ 1~4๋ฒˆ ๋‹จ๊ณ„๋ฅผ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.

  • ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ์—ฐ๊ฒฐ๋œ ์•ฑ์„ ์ž…๋ ฅํ•œ ํ›„ ์—ฐ๊ฒฐ๋œ ์•ฑ ๊ด€๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  • SmallBuilder {์ œํ’ˆ ์ด๋ฆ„} OAuth ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • ํ—ˆ์šฉ๋œ ์‚ฌ์šฉ์ž๋ฅผ ๊ด€๋ฆฌ ์Šน์ธ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฏธ๋ฆฌ ์ธ์ฆ๋จ์œผ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  • ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • Step 2: ํ”„๋กœํ•„ ๋˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ ํ• ๋‹น

    1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ์—ฐ๊ฒฐ๋œ ์•ฑ์„ ์ž…๋ ฅํ•œ ํ›„ ์—ฐ๊ฒฐ๋œ ์•ฑ ๊ด€๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    2. SmallBuilder {์ œํ’ˆ ์ด๋ฆ„} OAuth์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    3. ํ•˜๋‹จ์— ํ”„๋กœํ•„ ๊ด€๋ฆฌ ๋˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ ๊ด€๋ฆฌ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    4. ๋นŒ๋” ์„ค์ •์„ ๋‹ด๋‹นํ•˜๋Š” ํ”„๋กœํ•„ ๋˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    5. ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    SmallBuilder Line Items OAuth ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • ํ—ˆ์šฉ๋œ ์‚ฌ์šฉ์ž๋ฅผ ๊ด€๋ฆฌ ์Šน์ธ ์‚ฌ์šฉ์ž๊ฐ€ ๋ฏธ๋ฆฌ ์ธ์ฆ๋จ์œผ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

  • ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

  • Step 2: ํ”„๋กœํ•„ ๋˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ ํ• ๋‹น

    1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ์—ฐ๊ฒฐ๋œ ์•ฑ์„ ์ž…๋ ฅํ•œ ํ›„ ์—ฐ๊ฒฐ๋œ ์•ฑ ๊ด€๋ฆฌ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    2. SmallBuilder Line Items OAuth์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    3. ํ•˜๋‹จ์— ํ”„๋กœํ•„ ๊ด€๋ฆฌ ๋˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ ๊ด€๋ฆฌ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    4. ๋นŒ๋” ์„ค์ •์„ ๋‹ด๋‹นํ•˜๋Š” ํ”„๋กœํ•„ ๋˜๋Š” ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    5. ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    SmallBuilder Line Items๋Š” 10๊ฐœ์˜ ๋ผ์ด์„ ์Šค๋ฅผ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ๊ฐ ์‚ฌ์šฉ์ž๊ฐ€ ์ œํ’ˆ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก SmallBuilder Line Items ๊ด€๋ จ ๋ผ์ด์„ ์Šค์™€ ๊ถŒํ•œ ์ง‘ํ•ฉ์„ ํ• ๋‹นํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ด์„ ์Šค ๋ฐ ๊ถŒํ•œ ํ• ๋‹น >

    ์กฐ์ง ํ†ตํ™” ์„ค์ •

    ์กฐ์ง์ด ์ฒ˜์Œ ์ƒ์„ฑ๋œ ํ›„ ํ†ตํ™”๊ฐ€ null๋กœ ์„ค์ •๋˜์–ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ†ตํ™”๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์„ค์ •๋˜์ง€ ์•Š์œผ๋ฉด SmallBuilder Line Items๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์— ์กฐ์ง์˜ ํ†ตํ™”๊ฐ€ ์ œ๋Œ€๋กœ ์„ค์ •๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

    ์กฐ์ง ํ†ตํ™” ์„ค์ • >

    ๋ฒˆ์—ญ ํ™œ์„ฑํ™”

    SmallBuilder Line Items๋Š” ์˜์–ด์™€ ํ•œ๊ตญ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์–ธ์–ด๋Š” ์˜์–ด์ด๋ฉฐ, ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์กฐ์ง์—์„œ ๋ฒˆ์—ญ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ๋ฒˆ์—ญ ํ™œ์„ฑํ™” >

    ์—ฐ๊ฒฐ๋œ ์•ฑ ์„ค์ •

    ๋นŒ๋”์—์„œ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ๋ฒ„ํŠผ ์ถ”๊ฐ€, ์ปค์Šคํ…€ ๋ผ๋ฒจ ์กฐํšŒ ๋“ฑ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๊ด€๋ จ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋ ค๋ฉด SmallBuilder Line Items์— ์—ฐ๊ฒฐ๋œ ์•ฑ์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

    ์—ฐ๊ฒฐ๋œ ์•ฑ ์„ค์ • >

    ๋ฐ์ดํ„ฐ์†Œ์Šค ๋ช…์นญ ๋ฐ UI/UX ๋ณ€๊ฒฝ, ๋ผ์ธ ์•„์ดํ…œ ๊ฐ€์ƒ ์—ด(Virtual Column) ์ œ๊ณต ๋“ฑ

    2.0.1

    ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„, ํ…์ŠคํŠธ ์˜์—ญ ํ•„๋“œ UI/UX ๊ฐœ์„ , ํ•„ํ„ฐ ์˜ค๋ฅ˜ ๋“ฑ ์ˆ˜์ •

    1.40.2

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๋ณ€๊ฒฝ ๋ฐ ์‚ญ์ œ ๊ด€๋ จ ์˜ค๋ฅ˜ ์ˆ˜์ •, ์ฝ๊ธฐ ์ „์šฉ ์ œ์–ด ์ ์šฉ ์˜ค๋ฅ˜ ์ˆ˜์ •

    1.40

    ํŒจํ‚ค์ง€ ์—…๊ทธ๋ ˆ์ด๋“œ ์‹œ ์ˆ˜์‹ ํ•ด์ œ๋˜๋Š” ์˜ค๋ฅ˜ ์ˆ˜์ •, ๋ผ์ธ ์•„์ดํ…œ ์—ด์— ๋„์›€๋ง ํ…์ŠคํŠธ ํ‘œ์‹œ ์ œ๊ณต

    1.39

    ์ปฌ๋Ÿผ ์ˆœ์„œ ๋ณ€๊ฒฝ ์‹œ JavaScript ์˜ค๋ฅ˜, ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ Key ๋งคํ•‘ ์˜ค๋ฅ˜ ๋“ฑ ์ˆ˜์ • ์˜ต์…˜ ๊ธฐ๋Šฅ ๋น„ํ™œ์„ฑํ™”, ๋ผ์ธ ์•„์ดํ…œ ๊ฐ€์ƒ ์—ด ๊ณ„์‚ฐ ๊ธฐ๋Šฅ ์ง€์›

    1.38

    ๋ชจ๋ฐ”์ผ UI/UX ์ด์Šˆ ๋ฐ ์ผ๋ถ€ ์ €์žฅ ์˜ค๋ฅ˜ ์ˆ˜์ •

    v 1.40.2

    ๐Ÿ“ฆ Package Upgrade

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000VIv7IAG

    ๐Ÿ—“๏ธ Release Date

    2025. 6. 2.

    ๐Ÿ› Bug Fixes

    ๋นŒ๋”

    • ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์˜ค๋ฅ˜

      • ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์‚ญ์ œ ํ›„ ์ €์žฅ์„ ๋ˆ„๋ฅด๋ฉด 'SObject' ๊ด€๋ จ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ๋˜๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

      • ํ‰๊ฐ€ ์ด๋ฒคํŠธ(Evaluation Event)๋ฅผ ๋ณ€๊ฒฝํ•œ ํ›„ ๋นŒ๋”๋ฅผ ์ €์žฅํ•ด๋„ ๋ณ€๊ฒฝ์ด ๋ฐ˜์˜๋˜์ง€ ์•Š๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

      • ๊ฐ์ฒด ๊ธฐ๋ฐ˜ ๊ทœ์น™์—์„œ ์ž‘์—…์„ ์‚ญ์ œํ•˜๊ณ  ๋นŒ๋” ์ €์žฅํ•˜๊ณ  ๋‹ค์‹œ ํ™•์ธํ•ด๋ณด๋ฉด ์‚ญ์ œ๊ฐ€ ๋ฐ˜์˜๋˜์ง€ ์•Š๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

    ๋ฒˆ์—ญ ํ™œ์„ฑํ™”

    SmallBuilder ์ œํ’ˆ๋“ค์€ ์˜์–ด์™€ ํ•œ๊ตญ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์–ธ์–ด๋Š” ์˜์–ด์ด๋ฉฐ, ํ•œ๊ตญ์–ด ๋ฒˆ์—ญ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ์กฐ์ง์—์„œ ๋ฒˆ์—ญ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    1. ์„ค์ •์—์„œ ๋น ๋ฅธ ์ฐพ๊ธฐ ์ƒ์ž์— ๋ฒˆ์—ญ์„ ์ž…๋ ฅํ•œ ํ›„ ๋ฒˆ์—ญ ์–ธ์–ด ์„ค์ •์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    2. ํ•œ๊ตญ์–ด ํŽธ์ง‘์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    3. ํ™œ์„ฑ์„ ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.

    4. ์ €์žฅ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    5. ์˜์–ด์— ๋Œ€ํ•ด์„œ๋„ 1~4๋ฒˆ ๋‹จ๊ณ„๋ฅผ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค.

    ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ

    '25 Update

    • v 2.0.1 - ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„, ํ…์ŠคํŠธ ์˜์—ญ ํ•„๋“œ UI/UX ๊ฐœ์„ , ํ•„ํ„ฐ ์˜ค๋ฅ˜ ๋“ฑ ์ˆ˜์ •

    • v 1.40.2 - ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๋ณ€๊ฒฝ ๋ฐ ์‚ญ์ œ ๊ด€๋ จ ์˜ค๋ฅ˜ ์ˆ˜์ •, ์ฝ๊ธฐ ์ „์šฉ ์ œ์–ด ์ ์šฉ ์˜ค๋ฅ˜ ์ˆ˜์ •

    • - ํŒจํ‚ค์ง€ ์—…๊ทธ๋ ˆ์ด๋“œ ์‹œ ์ˆ˜์‹ ํ•ด์ œ๋˜๋Š” ์˜ค๋ฅ˜ ์ˆ˜์ •, ๋ผ์ธ ์•„์ดํ…œ ์—ด์— ๋„์›€๋ง ํ…์ŠคํŠธ ํ‘œ์‹œ ์ œ๊ณต ๋“ฑ

    • - ์ปฌ๋Ÿผ ์ˆœ์„œ ๋ณ€๊ฒฝ ์‹œ JavaScript ์˜ค๋ฅ˜, ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ Key ๋งคํ•‘ ์˜ค๋ฅ˜ ๋“ฑ ์ˆ˜์ • ์˜ต์…˜ ๊ธฐ๋Šฅ ๋น„ํ™œ์„ฑํ™”, ๋ผ์ธ ์•„์ดํ…œ ๊ฐ€์ƒ ์—ด ๊ณ„์‚ฐ ๊ธฐ๋Šฅ ์ง€์›

    • - ๋ชจ๋ฐ”์ผ UI/UX ์ด์Šˆ ๋ฐ ์ผ๋ถ€ ์ €์žฅ ์˜ค๋ฅ˜ ์ˆ˜์ •

    • - ๋ฐ์ดํ„ฐ์†Œ์Šค ๋ช…์นญ ๋ฐ UI/UX ๋ณ€๊ฒฝ, ๋ผ์ธ ์•„์ดํ…œ ๊ฐ€์ƒ ์—ด(Virtual Column) ์ œ๊ณต ๋“ฑ

    ๋นŒ๋” ์‹œ์ž‘ํ•˜๊ธฐ

    ๋นŒ๋” ์‹คํ–‰ํ•˜๊ธฐ

    1. App Launcher( )์—์„œ SmallBuilder Line Items๋ฅผ ์ฐพ์•„ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    2. ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํƒญ์œผ๋กœ ์ด๋™ ํ›„ ์ƒˆ๋กœ ๋งŒ๋“ค๊ธฐ๋ฅผ ๋ˆŒ๋Ÿฌ ๋นŒ๋”๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋” ๋ ˆ์ด์•„์›ƒ

    ๋นŒ๋”์˜ ์ƒ๋‹จ์—๋Š” ์ €์žฅ, ์‚ญ์ œ ๋ฐ ๋ฒ„ํŠผ ์ƒ์„ฑ ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๋ฒ„ํŠผ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์™ผ์ชฝ ์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ๋Š” ๋นŒ๋”์˜ ๊ธฐ๋ณธ ์„ค์ •์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ผ๋ถ€ ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์˜ค๋ฅธ์ชฝ ํŒจ๋„์—์„œ๋Š” ๋‹จ๊ณ„๋ณ„ ์„ค์ • ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    v 1.37

    ๐Ÿ“ฆ Package Upgrade

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000MNh7IAG

    ๐Ÿ—“๏ธ Release Date

    2025. 4. 2.

    โš™๏ธ Features

    • ๋ฐ์ดํ„ฐ์†Œ์Šค ๋ช…์นญ ๋ณ€๊ฒฝ: ๋ฐ์ดํ„ฐ์†Œ์Šค์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(Business Rule)๋กœ ๋ช…์นญ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    • ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ • ํ™”๋ฉด(UI/UX) ๊ฐœ์„ 

    • Evaluation Event์— โ€˜On Changeโ€™ ์˜ต์…˜ ์ถ”๊ฐ€: ํŠน์ • ํ•„๋“œ ๊ฐ’์ด ๋ณ€๊ฒฝ๋  ๋•Œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์ด ์ž๋™์œผ๋กœ ์‹คํ–‰๋˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘

    ๋ผ์ธ ์•„์ดํ…œ์— ๊ธฐ๋Šฅ ์ œ๊ณต (ํ˜„์žฌ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค) ์šฉ๋„๋กœ๋งŒ ์“ฐ์ž„)

    ๋ฐ์ดํ„ฐ์†Œ์Šค UI/UX ๋ณ€๊ฒฝ ์‚ฌํ•ญ

    ๊ธฐ์กด์—๋Š” ๋ฐ์ดํ„ฐ์†Œ์Šค ๋ ˆ์ด์•„์›ƒ์—์„œ ์ง์ ‘ ๊ฐ’์„ ์ž…๋ ฅํ•˜์—ฌ ์„ค์ •ํ•˜๋Š” ๋ฐฉ์‹์ด์—ˆ์œผ๋‚˜,UI ๋ณ€๊ฒฝ๋œ ๋ฒ„์ „์—์„œ๋Š” ๋ณด๊ธฐ ํ™”๋ฉด๊ณผ ํŽธ์ง‘ ํ™”๋ฉด์ด ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ํŽธ์ง‘ํ•  ๋•Œ๋Š” ๋ชจ๋‹ฌ ์ฐฝ์„ ํ†ตํ•ด ์ž‘์—…ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    • ์„ค๋ช…๋ž€์„ ์ถ”๊ฐ€ํ•˜์—ฌ ํ•ด๋‹น ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค)์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ธฐ์žฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๊ธฐ์กด์—๋Š” ํ•„ํ„ฐ๋ฅผ ์ง์ ‘ ์ž…๋ ฅํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด ์–ด๋“œ๋ฏผ์—๊ฒŒ ๋‹ค์†Œ ์–ด๋ ค์›€์ด ์žˆ์–ด ํ•„ํ„ฐ ์„ค์ • ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค ๊ณ ๊ธ‰)์—์„œ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ๋งŽ์„ ๊ฒฝ์šฐ ๋ณด์ด์ง€ ์•Š์€ ๋ถˆํŽธํ•จ์„ ๊ฐœ์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    ๊ธฐ์กด ํ™”๋ฉด

    ๋ณ€๊ฒฝ๋œ ํ™”๋ฉด

    ์กฐํšŒ ํ™”๋ฉด

    ์ถ”๊ฐ€ ๋˜๋Š” ํŽธ์ง‘ ํ™”๋ฉด

    ๊ด€๋ จ ๊ฐ์ฒด๋ฅผ ์ด์šฉํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค ๊ธฐ๋ณธ)
    Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค ๊ณ ๊ธ‰)

    v 1.40

    ๐Ÿ“ฆ Package Upgrade

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000ThrBIAS

    ๐Ÿ—“๏ธ Release Date

    2025. 4. 30.

    ๐Ÿ› Bug Fixes

    ๋นŒ๋”

    ๋ฒ„์ „ 1.39 ํŒจํ‚ค์ง€ ์—…๊ทธ๋ ˆ์ด๋“œ ์‹œ ์ˆ˜์‹ ์ ์šฉ์ด ์ž๋™์œผ๋กœ ํ•ด์ œ๋˜๋˜ ํ˜„์ƒ ์ˆ˜์ •

    โš™๏ธ Features

    ๋ผ์ธ ์•„์ดํ…œ ์—ด์— ์ ์šฉ๋œ ๊ณ„์‚ฐ์‹ ํ•ด์ œํ•˜๊ธฐ

    ์ด์ „์—๋Š” ์ ์šฉ๋œ ๊ณ„์‚ฐ์‹์„ ํ•ด์ œํ•˜๋ ค๋ฉด ๋‹ค๋ฅธ ์˜ต์…˜์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ํ•„๋“œ๋ฅผ ์ œ๊ฑฐํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ๋ฒ„์ „๋ถ€ํ„ฐ๋Š” '๊ณ„์‚ฐ์‹ ์ ์šฉ ํ•ด์ œํ•˜๊ธฐ' ๋ฒ„ํŠผ์„ ํ†ตํ•ด ๊ณ„์‚ฐ์‹์„ ๋ฐ”๋กœ ํ•ด์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋„์›€๋ง ํ…์ŠคํŠธ ์„ค์ •

    ์ปฌ๋Ÿผ ์˜†์— ๋„์›€๋ง ํ…์ŠคํŠธ๋ฅผ ํ‘œ์‹œํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ปฌ๋Ÿผ์˜ ์šฉ๋„๋ฅผ ์•ˆ๋‚ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋„์›€๋ง ํ…์ŠคํŠธ ๊ธฐ๋Šฅ์ด ํ™œ์„ฑํ™”๋œ ์ƒํƒœ์—์„œ ์ž…๋ ฅํ•œ ๊ฐ’์ด ์—†๋Š” ๊ฒฝ์šฐ, ๊ฐœ์ฒด ํ•„๋“œ์— ์„ค์ •๋œ ๋„์›€๋ง ํ…์ŠคํŠธ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    v 2.0.1

    ๐Ÿ“ฆ Package Upgrade

    ๐Ÿ—“๏ธ Release Date

    2025. 7. 3.

    โš™๏ธ Features

    ๐Ÿ”ง Improvement

    ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•œ ์บ์‹ฑ

    ์บ์‹ฑ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์กฐํšŒํ•˜๊ณ  ์•ˆ์ •์ ์ธ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ๋ฐ์ดํ„ฐ์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ตœ์‹  ์ƒํƒœ๋กœ ์กฐํšŒ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฐ์ดํ„ฐ๊ฐ€ ์ตœ์‹  ์ƒํƒœ๋กœ ๋ฐ˜์˜๋˜์ง€ ์•Š๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด, ์บ์‹ฑ ์„ค์ •์„ ๋น„ํ™œ์„ฑํ™”ํ•ด ๋ณด์„ธ์š”.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ •

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์„ค์ •์ž…๋‹ˆ๋‹ค.

    Apex ๊ธฐ๋ฐ˜ ๊ทœ์น™์—์„œ ํ‰๊ฐ€ ์ด๋ฒคํŠธ(Evaluation Event)๊ฐ€ "๋ณ€๊ฒฝ๋จ(On Change)"์ผ ๊ฒฝ์šฐ ํ‰๊ฐ€ ํ•„๋“œ๋ฅผ ์„ ํƒํ•˜๋Š” ๋ชจ๋‹ฌ์ด ๋กœ๋“œ๊ฐ€ ๋˜์ง€ ์•Š๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

  • ๋ผ์ธ ์•„์ดํ…œ์˜ '์‚ญ์ œ ์ œ์–ด ํ•„๋“œ'์— ๋Œ€ํ•œ ๋„์›€๋ง ๋ฌธ๊ตฌ๊ฐ€ ์ž˜๋ชป๋˜์–ด ์žˆ์–ด ์ˆ˜์ •

    • ์ด์ „ ๋‚ด์šฉ: ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์˜ ํ™•์ธ๋ž€(Boolean ์œ ํ˜•) ํ•„๋“œ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ง€์ •ํ•œ ํ•„๋“œ ๊ฐ’์ด ์ฐธ์ธ ๊ฒฝ์šฐ, ๋ ˆ์ฝ”๋“œ์˜ ์‚ญ์ œ ๋ฒ„ํŠผ์ด ํ™œ์„ฑํ™” ๋˜๊ณ  ๊ฑฐ์ง“์ธ ๊ฒฝ์šฐ ๋ฒ„ํŠผ์ด ๋น„ํ™œ์„ฑํ™” ๋˜์–ด ์‚ฌ์šฉ์ž๊ฐ€ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

    • ์ˆ˜์ •๋œ ๋‚ด์šฉ: ์ง€์ •ํ•œ ํ•„๋“œ๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์˜ ํ™•์ธ๋ž€(Boolean) ์œ ํ˜• ํ•„๋“œ์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํ•„๋“œ์˜ ๊ฐ’์ด ์ฐธ(true)์ธ ๊ฒฝ์šฐ, ํ•ด๋‹น ๋ ˆ์ฝ”๋“œ์˜ ์‚ญ์ œ ๋ฒ„ํŠผ์ด ๋น„ํ™œ์„ฑํ™”๋˜์–ด ์‚ฌ์šฉ์ž๊ฐ€ ๋ ˆ์ฝ”๋“œ๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์—†๋„๋ก ์ œ์–ด๋ฉ๋‹ˆ๋‹ค.

  • ์ฝ๊ธฐ ์ „์šฉ ์กฐ๊ฑด์—์„œ ์ฒดํฌ๋ฐ•์Šค(Boolean) ํ•„๋“œ๋ฅผ ์กฐ๊ฑด์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ์ œ๋Œ€๋กœ ์ ์šฉ๋˜์ง€ ์•Š๋˜ ๋ฌธ์ œ ํ•ด๊ฒฐ

  • v 1.40
    v 1.39
    v 1.38
    v 1.37
    1.37

    ๋นŒ๋”

    • ๋ผ์ธ ์•„์ดํ…œ ์—ด์—์„œ ์ ์šฉ๋œ ๊ณ„์‚ฐ์‹์„ ํ•ด์ œํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ • ์ œ๊ณต

    • ๋ผ์ธ ์•„์ดํ…œ ์—ด์— ๋„์›€๋ง ํ…์ŠคํŠธ๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ธฐ๋Šฅ ์ œ๊ณต

    ์š”์•ฝ ํ‘œ์‹œ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ•˜๋‹จ์— ์š”์•ฝ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

    ์ฒซ ๋ฒˆ์งธ ์—ด ๊ณ ์ •

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ๊ฐ€๋กœ ์Šคํฌ๋กค ์‹œ, ์ฒซ ๋ฒˆ์งธ ์—ด์„ ๊ณ ์ •ํ•ฉ๋‹ˆ๋‹ค. ํ‘œ์‹œํ•  ์—ด์ด ๋งŽ์€ ๊ฒฝ์šฐ, ์ฒซ ๋ฒˆ์งธ ํ–‰์„ ๊ณ ์ •ํ•ด๋ณด์„ธ์š”.

    ์ด๋ฏธ์ง€ URL์„ ์ด๋ฏธ์ง€๋กœ ๋ณด์—ฌ์ฃผ๊ธฐ

    ์ค€๋น„์ค‘์ž…๋‹ˆ๋‹ค.

    ์ด๋ฏธ์ง€ URL์„ ์ด๋ฏธ์ง€๋กœ ๋ณด์—ฌ์ฃผ๊ธฐ

    ์ค€๋น„์ค‘์ž…๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ

    • ํ…์ŠคํŠธ ์˜์—ญ(Textarea) ํ•„๋“œ UI/UX ๊ฐœ์„ 

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ํ…์ŠคํŠธ ์˜์—ญ(Textarea) ํ•„๋“œ์˜ ์ž…๋ ฅ ๋ฐฉ์‹์ด ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐ์กด์—๋Š” ์ผ๋ฐ˜ ํ…์ŠคํŠธ ํ•„๋“œ์™€ ๋™์ผํ•œ ๋‹จ์ผ ์ค„ ์ž…๋ ฅ์ฐฝ์œผ๋กœ ์ œ๊ณต๋˜์–ด ์ค„๋ฐ”๊ฟˆ์ด ๋ถˆ๊ฐ€๋Šฅํ–ˆ์œผ๋‚˜, ์ด๋ฒˆ ๋ฒ„์ „๋ถ€ํ„ฐ๋Š” ์ค„๋ฐ”๊ฟˆ์ด ๊ฐ€๋Šฅํ•œ ๋ฉ€ํ‹ฐ๋ผ์ธ ์ž…๋ ฅ์ฐฝ์œผ๋กœ ๋ณ€๊ฒฝ๋˜์–ด ๋ณด๋‹ค ํŽธ๋ฆฌํ•œ ์ž…๋ ฅ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ๐Ÿ› Bug Fixes

    ๋นŒ๋”

    • ๋ผ์ธ ์•„์ดํ…œ์˜ ์ฝ๊ธฐ ์ „์šฉ ์„ค์ •์ด ์ ์šฉ๋˜์ง€ ์•Š์€ ๋ฌธ์ œ ํ•ด๊ฒฐ

    • ํ•„ํ„ฐ ๋„๊ตฌ์—์„œ โ€˜ํฌํ•จ๋˜์ง€ ์•Š์Œโ€™ ์กฐ๊ฑด์ด ์žˆ๋Š” ๊ฒฝ์šฐ โ€˜Notโ€™ ๊ด€๋ จ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ๋˜๋Š” ํ˜„์ƒ ํ•ด๊ฒฐ

    • ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์—ด ์ถ”๊ฐ€ ๋ชจ๋‹ฌ๋‚ด ํ•„๋“œ ๊ฒ€์ƒ‰ ํ›„ ํ•„๋“œ ์„ ํƒ ์‹œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ๊ฐ€ ์ดˆ๊ธฐํ™”๋˜๋Š” ํ˜„์ƒ ํ•ด๊ฒฐ

    ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

    • ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000Vy9ZIAS

    1

    ์ขŒ์ธก ์ƒ๋‹จ ํƒ€์ดํ‹€ ์˜†์— ํ™œ์„ฑํ™” ์—ฌ๋ถ€๋ฅผ ์•Œ ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ, ๋ฒ„ํŠผ ์ถ”๊ฐ€, ์ €์žฅ ๋ฐ ์‚ญ์ œ ๋“ฑ ๋ฒ„ํŠผ์ด ๋ชจ์—ฌ์žˆ์Šต๋‹ˆ๋‹ค.

    • ๋ฒ„ํŠผ ์ถ”๊ฐ€: ํ™œ์„ฑํ™”๋œ ๋นŒ๋” ์„ค์ • ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ๊ธฐ์˜ ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ง€์ •ํ•œ ๋ถ€๋ชจ ๊ฐœ์ฒด ๊ธฐ๋ฐ˜์œผ๋กœ ์›ํ•˜๋Š” ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • ํ™œ์„ฑํ™”: ๋นŒ๋”๋ฅผ ๊ตฌ์„ฑ๊ธฐ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ํ™œ์„ฑํ™”๋ฅผ ๋ฐ˜๋“œ์‹œ ํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋น„ํ™œ์„ฑํ™” ์ƒํƒœ์ธ ๊ฒฝ์šฐ ๊ตฌ์„ฑ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

    • ์ €์žฅ: ๋นŒ๋”๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.

    • ๋ณต์ œ: ์ตœ์ข…์ ์œผ๋กœ ์ €์žฅ๋œ ๋นŒ๋” ๊ธฐ๋ฐ˜์œผ๋กœ ๋ณต์ œํ•ฉ๋‹ˆ๋‹ค. ๋ณต์ œ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ ํ›„ '์ €์žฅ' ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ์•ผ ๋ณต์ œ๊ฐ€ ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐํ™”: ํŽธ์ง‘ ๊ณผ์ •์—์„œ ์›๋ž˜ ์„ค์ •์œผ๋กœ ๋ณต๊ตฌํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ, Reset ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ตœ์ข…์ ์œผ๋กœ ์ €์žฅ๋œ ์„ค์ •์œผ๋กœ ๋ณต๊ตฌ๋ฉ๋‹ˆ๋‹ค.

    • ๋„์›€๋ง: SmallBuilder Line Items์˜ ํ—ฌํ”„ ๋ฌธ์„œ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    2

    ์„ค์ • ๋‹จ๊ณ„๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋‹จ๊ณ„๋Š” 3๊ฐ€์ง€๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ ๊ฐ ์„ค์ •์„ ๋ˆ„๋ฅด๋ฉด ๋ฒˆ ์˜์—ญ์ด ํ•ด๋‹น ํŒจ๋„๋กœ ์ „ํ™˜์ด ๋ฉ๋‹ˆ๋‹ค.

    • ๊ฐœ์ฒด ์—ฐ๊ฒฐ: ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ํฌ๊ฒŒ ๋ถ€๋ชจ, ์กฐํšŒ, ๋ผ์ธ ์•„์ดํ…œ์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋‹จ๊ณ„์—์„œ๋Š” ๋ถ€๋ชจ, ์กฐํšŒ, ๋ผ์ธ ์•„์ดํ…œ์— ์–ด๋– ํ•œ ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ•ด๋‹น ๊ตฌ์„ฑ๋“ค์— ์„ค์ •ํ•˜๋ ค๋Š” ๊ฐœ์ฒด๋“ค์€ ์„œ๋กœ Junction ๊ด€๊ณ„๋กœ ๋งบ์–ด์ ธ ์žˆ์–ด์•ผ ํ•˜๊ณ  ๊ฐœ์ฒด๋Š” ์Šคํƒ ๋‹ค๋“œ, ์ปค์Šคํ…€ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

    • ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ •: ์กฐํšŒ๋กœ ์ง€์ •๋œ ๊ฐœ์ฒด์— ๋Œ€ํ•˜์—ฌ ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๊ตฌ์„ฑ ์‹œ ์ปฌ๋Ÿผ ๊ฐ’ ์ •๋ ฌ ๋ฐ ๋„ˆ๋น„ ๋“ฑ์„ ์„ค์ •ํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

    • ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ •: ๋ผ์ธ ์•„์ดํ…œ์œผ๋กœ ์ง€์ •๋œ ๊ฐœ์ฒด์— ๋Œ€ํ•˜์—ฌ ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๊ตฌ์„ฑ ์‹œ ์ปฌ๋Ÿผ ๊ฐ’ ์ •๋ ฌ, ๋„ˆ๋น„, ๊ฐ ์ปฌ๋Ÿผ์˜ ์†์„ฑ(์ˆซ์ž, ์กฐํšŒ ํ•„๋“œ ๋“ฑ)์— ๋”ฐ๋ฅธ ๊ณ ๊ธ‰ ์„ค์ •์„ ํ•˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

    3

    ๋นŒ๋”์˜ ๊ธฐ๋ณธ ์„ค์ •์„ ํ•˜๋Š” ํŒจ๋„์ž…๋‹ˆ๋‹ค. ๋นŒ๋”์˜ ์ด๋ฆ„, ํ™”๋ฉด ๋น„์œจ, ์žฅ์น˜์— ๋”ฐ๋ฅธ ํ™”๋ฉด UX ๋“ฑ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    4

    ๋ฒˆ์˜ ๋‹จ๊ณ„์— ๋”ฐ๋ผ ํ•ด๋‹น ์„ค์ • ํŒจ๋„๋กœ ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค.

    1. SmallBuilder Line Items ์•ฑ ์ด๋™
    2. ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํƒญ์œผ๋กœ ์ด๋™

    ๊ธฐ์กด์—๋Š” SOQL ๋ฌธ์„ ์ง์ ‘ ์ž…๋ ฅํ•˜์—ฌ ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ–ˆ์ง€๋งŒ, ์ด์ œ๋Š” ์ œ๊ณต๋˜๋Š” ํ•„ํ„ฐ ์„ค์ • UI๋ฅผ ํ†ตํ•ด ํ•„ํ„ฐ ํ‘œํ˜„ ์‹์„ ๋” ์‰ฝ๊ณ  ์ง๊ด€์ ์œผ๋กœ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ธ ์•„์ดํ…œ, ์กฐํšŒ, ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค)์˜ ํ•„ํ„ฐ ์„ค์ •์— ์ ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ๋ฐ์ดํ„ฐ์†Œ์Šค
    Virtual Column(๊ฐ€์ƒ ์—ด)
    ํ•„ํ„ฐ ์„ค์ • UI/UX ๊ฐœ์„ 

    ์ œํ’ˆ ์†Œ๊ฐœ

    ๊ฐœ์š”

    SmallBuilder Line Items๋Š” ๊ธฐํšŒ ๋ฐ ๊ฒฌ์  ๊ฐ™์€ ํ‘œ์ค€ ๊ฐœ์ฒด๋Š” ๋ฌผ๋ก  ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด์—์„œ ํ• ์ธ์œจ ๊ณ„์‚ฐ๊ธฐ, ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ์—ฐ๋™์„ ์ง€์›ํ•˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ฐœ๋ฐœ ์—†์ด ๊ตฌํ˜„ํ•˜๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

    ์™œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋‚˜์š”?

    ์„ธ์ผ์ฆˆํฌ์Šค์—์„œ ๋Œ€ํ‘œ์ ์œผ๋กœ Junction ๊ด€๊ณ„๋ฅผ ๋งบ์€ ๊ฐœ์ฒด๋กœ๋Š” ๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋“ค์€ ์„ธ์ผ์ฆˆ ํด๋ผ์šฐ๋“œ์—์„œ ํ•„์ˆ˜๋กœ ์‚ฌ์šฉ๋˜๋Š” ๊ฐœ์ฒด๋“ค์ž…๋‹ˆ๋‹ค. ์„ธ์ผ์ฆˆํฌ์Šค์—์„œ ์ด๋Ÿฌํ•œ ๊ฐœ์ฒด๋“ค์˜ ๋ผ์ธ ์•„์ดํ…œ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ๋•Œ ์ œ๊ณต๋˜๋Š” ๊ธฐ๋ณธ ๊ธฐ๋Šฅ๋“ค์€ ํ›Œ๋ฅญํ•˜์ง€๋งŒ, ์ผ๋ถ€ ๋ถˆํŽธํ•œ ์‚ฌํ•ญ๋“ค์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ํ˜„์žฌ ๐Ÿ”— ๊ฐœ์ฒด๋“ค๋งŒ ์ง€์›ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ํŒ๋งค ๊ฐ€๊ฒฉ์ด๋‚˜ ์ˆ˜๋Ÿ‰์„ ์ž…๋ ฅํ•  ๋•Œ ์ด์•ก์ด ์ฆ‰์‹œ ๊ณ„์‚ฐ๋˜์ง€ ์•Š๊ฑฐ๋‚˜, ํ• ์ธ์œจ์„ ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ๊ณ„์‚ฐํ•ด ์ž…๋ ฅํ•ด์•ผ ํ•˜๋Š” ๋ถ€๋ถ„์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋งŽ์€ ์‚ฌ์šฉ์ž๋“ค์€ ์ œํ’ˆ ์„ ํƒ์ด๋‚˜ ๋ผ์ธ ์•„์ดํ…œ ์ž…๋ ฅ ์‹œ ์ž์ฒด ์„œ๋ฒ„์—์„œ ์žฌ๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€ ์ฐธ๊ณ ํ•˜๊ณ  ์‹ถ์–ด ํ•ฉ๋‹ˆ๋‹ค. ๋”๋ถˆ์–ด, ๋‹ค๋ฅธ ๊ฐœ์ฒด์—์„œ ๊ณ„์ •๋ณ„ ํ• ์ธ์œจ์„ ์ž๋™์œผ๋กœ ์ ์šฉํ•˜์—ฌ ๊ณ„์‚ฐ๋˜๊ธธ ์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ๊ฐœ๋ฐœ์ž์˜ ๋„์›€์ด ํ•„์š”ํ•˜๊ณ , ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๋ณ€๊ฒฝํ•  ๋•Œ ์–ด๋“œ๋ฏผ์ด ์‰ฝ๊ฒŒ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•  ์ˆ˜ ์—†๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ฐœ๋ฐœ ์—†์ด ํฌ์ธํŠธ & ํด๋ฆญ ๋ฐฉ์‹์œผ๋กœ ์ด์™€ ๊ฐ™์€ ๋‹จ์ ์„ ๋ณด์™„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ๋˜๋Š” ํŽธ์ง‘ ์‹œ ์ž๋™ ๊ณ„์‚ฐ, ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ์ ์šฉ ๋“ฑ ์ตœ์†Œํ•œ์˜ ๊ฐœ๋ฐœ ๋ฐ ํฌ์ธํŠธ & ํด๋ฆญ๋งŒ์œผ๋กœ ๊ธฐ๋Šฅ ํ™•์žฅ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    • ๋นŒ๋”๋ฅผ ์ด์šฉํ•˜์—ฌ ์†์‰ฝ๊ฒŒ ํ™”๋ฉด์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด ์‹œ๊ฐ„์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ๊ณ  ์œ ์ง€๋ณด์ˆ˜๋กœ์„œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ ๋ฐ ์ˆ˜์ •์„ ํ•˜๋Š”๋ฐ ์–ด๋ ค์›€์ด ์—†์Šต๋‹ˆ๋‹ค.

    • ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ํ•„์š”ํ•œ ๊ธฐ๋ณธ ์„ค์ •์€ ๊ฐœ๋ฐœ์ด ํ•„์š”ํ•˜์ง€ ์•Š์•„, ์„ธ์ผ์ฆˆํฌ์Šค ๊ธฐ๋ณธ ์ง€์‹์„ ๊ฐ–์ถ˜ ์–ด๋“œ๋ฏผ๋งŒ์œผ๋กœ๋„ ํ™”๋ฉด์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์„ธ์ผ์ฆˆํฌ์Šค ์Šคํƒ ๋‹ค๋“œ ํ™”๋ฉด

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด

    Junction Object๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”?

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” Junction ๊ด€๊ณ„๋ฅผ ๋งบ์€ ๊ฐœ์ฒด๋“ค์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์•ž์„œ ๋งํ–ˆ๋“ฏ์ด ๋Œ€ํ‘œ์ ์œผ๋กœ ๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ค‘์—์„œ ๊ธฐํšŒ์˜ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์กฐ๋ฅผ ์‚ดํŽด๋ด…์‹œ๋‹ค.

    ์šฐ๋ฆฌ๋Š” ๊ธฐํšŒ(Opportunity)์—์„œ ์ œํ’ˆ์„ ์ถ”๊ฐ€ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ์ œํ’ˆ์˜ ์ •๋ณด์™€ ๊ฐ€๊ฒฉ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ชจ๋“  ๊ด€๋ จ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry) ๊ฐœ์ฒด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ, ์ œํ’ˆ์„ ์ถ”๊ฐ€ํ•  ๋•Œ ์ž…๋ ฅํ•˜๋Š” ํŒ๋งค๊ฐ€, ์ˆ˜๋Ÿ‰ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ํ•จ๊ป˜ ์ €์žฅํ•˜๋Š” ๊ฐœ์ฒด๊ฐ€ ๋ฐ”๋กœ ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์ž…๋‹ˆ๋‹ค.

    ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์€ ์œ„์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๊ธฐํšŒ(Opportunity)์™€ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)์˜ ์ •๋ณด๋ฅผ ๋ชจ๋‘ ํฌํ•จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐํšŒ ์ œํ’ˆ์€ ๊ธฐํšŒ์— ์—ฌ๋Ÿฌ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ๋„๋ก ์—ฐ๊ฒฐํ•ด ์ฃผ๋Š” ์—ญํ• ์„ ํ•˜๋ฉฐ, ์ด๋Ÿฌํ•œ ์—ญํ• ์„ ํ•˜๋Š” ๊ฐœ์ฒด๋ฅผ Junction ๊ฐœ์ฒด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    ์œ„์˜ ๊ด€๊ณ„๋“ค๋งŒ ๋งบ๊ณ  ์žˆ์œผ๋ฉด ์–ธ์ œ๋“ ์ง€ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๋Ÿฌํ•œ ๊ด€๊ณ„ ์†์— ์žˆ๋Š” ๊ฐ ๊ฐœ์ฒด๋“ค์€ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ง€์นญํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค:

    • ๊ธฐํšŒ: ๋ถ€๋ชจ

    • ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ: ์กฐํšŒ

    • ๊ธฐํšŒ ์ œํ’ˆ: ๋ผ์ธ ์•„์ดํ…œ

    ์ฃผ์š” ๊ธฐ๋Šฅ

    โœ”๏ธ ๋ชจ๋“  ๊ฐœ์ฒด ์ง€์›

    SmallBuilder Line Items์˜ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ๋ชจ๋“  ๊ฐœ์ฒด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ‘œ์ค€ ๊ธฐํšŒ ๋˜๋Š” ๊ฒฌ์ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ปค์Šคํ…€ ๊ฐœ์ฒด์—์„œ๋„ ์ œํ’ˆ ๋“ฑ ๋ผ์ธ ์•„์ดํ…œ์„ ์ฒ˜๋ฆฌ ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ ์‹œ ๋” ์ด์ƒ ์ฝ”๋”ฉ์€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.

    โœ”๏ธ ํฌ์ธํŠธ & ํด๋ฆญ ๊ธฐ๋ฐ˜ ์ €์ž‘ ํˆด

    ๊ธฐํšŒ, ์ œํ’ˆ ๋ฐ ๊ฐ€๊ฒฉ ๋ชฉ๋ก๊ณผ ๊ฐ™์ด 3๊ฐœ ์ด์ƒ์˜ ๊ฐœ์ฒด๋กœ ์ด๋ฃจ์–ด์ง€๋Š” ๋ณต์žกํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ(Line Item Editor)๋ฅผ ์†์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    โœ”๏ธ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ์‹ค์‹œ๊ฐ„ ์—ฐ๋™

    ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ์˜ ์‹ค์‹œ๊ฐ„ ์—ฐ๋™์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ(Line Item Editor)๋Š” ์—ฐ๋™์„ ๋‹ด๋‹นํ•˜๋Š” Apex Code๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์—ฐ๋™ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

    โœ”๏ธ CPQ์˜ ๋Œ€์•ˆ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ(Line Item Editor)๋Š” Currency ํ•„๋“œ์— ํ• ์ธ์œจ ๊ณ„์‚ฐ๊ธฐ๋ฅผ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŽธ๋ฆฌํ•œ ํ• ์ธ์œจ ๊ณ„์‚ฐ์ด ์ค‘์š”ํ•œ ๊ฒฝ์šฐ ํ›Œ๋ฅญํ•œ CPQ์˜ ๋Œ€์•ˆ์œผ๋กœ ํ™œ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ์š”์•ฝ ํ‘œ์‹œํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ•˜๋‹จ์— ์š”์•ฝ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๋ผ์ธ ์•„์ดํ…œ ์ด์•ก ํ•„๋“œ ๊ฐ’์˜ ํ•ฉ๊ณ„ ํ‘œ์‹œํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์ถ”๊ฐ€๋œ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์˜ ์ด์•ก(TotalPrice) ํ•„๋“œ(์—ด) ๊ฐ’์„ ํ•ฉ์‚ฐํ•˜์—ฌ ํ•˜๋‹จ์— ํ•ฉ๊ณ„๋ฅผ ํ‘œ์‹œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    ์„ค์ • ๋ฐฉ๋ฒ•

    1. ๊ธฐ๋ณธ ์„ค์ •์˜ ๋ผ์ธ ์•„์ดํ…œ ์˜ต์…˜์—์„œ '์š”์•ฝ ํ‘œ์‹œ'๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

    2. ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ์ด์•ก(TotalPrice) ํ•„๋“œ(์—ด)์˜ ์š”์•ฝ ์†์„ฑ์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

    ๊ฒฐ๊ณผ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด, ์ถ”๊ฐ€๋œ ๋ฐ์ดํ„ฐ์˜ ์ด์•ก ํ•ฉ๊ณ„๊ฐ€ ํ•˜๋‹จ์— ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ฒซ ๋ฒˆ์งธ ์—ด ๊ณ ์ •ํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ๊ฐ€๋กœ ์Šคํฌ๋กค ์‹œ, ์ฒซ ๋ฒˆ์งธ ์—ด์„ ๊ณ ์ •ํ•ฉ๋‹ˆ๋‹ค. ํ‘œ์‹œํ•  ์—ด์ด ๋งŽ์€ ๊ฒฝ์šฐ, ์ฒซ ๋ฒˆ์งธ ํ–‰์„ ๊ณ ์ •ํ•ด๋ณด์„ธ์š”.

    ์ผ๋ฐ˜

    ์ฒซ ๋ฒˆ์งธ ์—ด ๊ณ ์ •์ด ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ

    ์กฐํšŒ ๋ ˆ์ฝ”๋“œ์˜ ํ•„ํ„ฐ ๋ฐ ์ •๋ ฌ ์ˆœ์„œ ์„ค์ •ํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ํ™”๋ฉด์ด ๋กœ๋“œ๋  ๋•Œ ์กฐ๊ฑด์— ๋งž๋Š” ์กฐํšŒ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋ ค๋ฉด ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•˜๊ณ , ์›ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ ์ˆœ์„œ๋ฅผ ์ง€์ •ํ•˜๋ ค๋ฉด ์ •๋ ฌ์„ ์„ค์ •ํ•˜์„ธ์š”.

    ํ•„ํ„ฐ ์„ค์ •ํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ๋กœ๋“œ ์‹œ ์›ํ•˜๋Š” ์กฐ๊ฑด์— ๋งž๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค. ํ•„ํ„ฐ ์„ค์ • ๋ฐฉ์‹์€ SOQL์˜ WHERE์ ˆ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ํ™œ์„ฑํ™”๋œ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ๋งŒ ์กฐํšŒํ•˜๋ ค๋ฉด IsActive = true๋กœ ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ง์ ‘ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ  ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ(Query Wizard)๋ฅผ ์ด์šฉํ•ด ํ•„ํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ •๋ ฌ ์„ค์ •ํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ๋กœ๋“œ ์‹œ ๋ฐ์ดํ„ฐ๊ฐ€ ์›ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ •๋ ฌ๋˜๋„๋ก ๋ฏธ๋ฆฌ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ ฌ ์„ค์ • ๋ฐฉ์‹์€ SOQL์˜ ORDER BY์ ˆ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์˜ ์ด๋ฆ„์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด Name ASC๋กœ ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ์˜ ๋ฐ์ดํ„ฐ ํ…Œ์ด๋ธ”์— ํ‘œ์‹œํ•  ์—ด ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ ํƒ๋œ ํ•„๋“œ์˜ ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋˜๋ฉฐ, ๋ ˆ์ด๋ธ” ์ž…๋ ฅ๋ž€์— ๊ฐ’์„ ์ž…๋ ฅํ•˜๋ฉด ํ•ด๋‹น ๊ฐ’์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ž…๋ ฅ๋ž€ ์˜†์˜ ์•„์ด์ฝ˜( )์„ ํด๋ฆญํ•˜์—ฌ ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์‚ฝ์ž…ํ•˜๋ฉด ์‚ฌ์šฉ์ž ์–ธ์–ด ์„ค์ •์— ๋”ฐ๋ผ ๋ฒˆ์—ญ๋œ ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ๋ ˆ์ด๋ธ”์„ ๋ณ„๋„๋กœ ์„ค์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ๊ธฐ๋ณธ์ ์œผ๋กœ ํ‘œ์‹œ๋˜๋Š” ํ•„๋“œ ๋ ˆ์ด๋ธ”์€ ์‚ฌ์šฉ์ž ์–ธ์–ด์— ๋”ฐ๋ผ ๋ฒˆ์—ญ๋ฉ๋‹ˆ๋‹ค.

    ํ•„์ˆ˜ ์ž…๋ ฅ์œผ๋กœ ์ง€์ •ํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ(์—ด)์˜ ์ž…๋ ฅ์„ ํ•„์ˆ˜๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

    ํ•„์ˆ˜ ์„ค์ • ์˜ˆ์‹œ

    ํ•„์ˆ˜๋กœ ์„ค์ •๋œ ํ•„๋“œ(์—ด)์€ ์ž…๋ ฅ๋ž€ ์™ผ์ชฝ์— ๋ถ‰์€ ์„ ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ํ•„์ˆ˜ ํ•„๋“œ(์—ด) ๊ฐ’์„ ์ž…๋ ฅํ•˜์ง€ ์•Š๊ณ  ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ, ์•„๋ž˜์™€ ๊ฐ™์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

    ํ•„ํ„ฐ ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ

    ํ•„ํ„ฐ ๊ฒ€์ƒ‰์„ ๊ธฐ๋ณธ์œผ๋กœ ํŽผ์ณ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ํ•„ํ„ฐ๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ์ด ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•˜์„ธ์š”.

    ์˜ˆ์‹œ: ํ•„ํ„ฐ ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ๊ฐ€ ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ๋กœ๋“œ ์‹œ, ํ•„ํ„ฐ ๊ฒ€์ƒ‰ ๋ ˆ์ด์•„์›ƒ์ด ๊ธฐ๋ณธ์œผ๋กœ ํŽผ์ณ์ ธ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ์—ด ์ถ”๊ฐ€ํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ์— ํ‘œ์‹œํ•  ํ•„๋“œ(์—ด)์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋ฐ์ดํ„ฐ์†Œ์Šค์—์„œ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€์ƒ ์—ด์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์„ค์ • ๋ฐฉ๋ฒ•

    ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ์—ด ์ถ”๊ฐ€ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์กฐํšŒ ์„ ํƒ๊ธฐ์— ํ‘œ์‹œํ•  ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ์—ด ์ถ”๊ฐ€ ์˜ˆ์‹œ

    ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰ ์„ค์ •ํ•˜๊ธฐ

    ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ ๊ฒ€์ƒ‰ํ•  ํ‚ค์›Œ๋“œ์˜ ๋Œ€์ƒ ํ•„๋“œ๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์ด๋ฆ„ ํ•„๋“œ๊ฐ€ ๊ฒ€์ƒ‰ ๋Œ€์ƒ์œผ๋กœ ์ง€์ •๋˜๋ฉฐ, ์ผ์น˜ ์กฐ๊ฑด์€ ํฌํ•จ(Contains)์ž…๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ

    ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰ ํ•„๋“œ๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry) ๊ฐœ์ฒด์˜ ์ œํ’ˆ ์ด๋ฆ„(Name) ํ•„๋“œ๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ ์กฐ๊ฑด์€ ํฌํ•จ(Contains)์ด๋ฉฐ, ์ž…๋ ฅํ•œ ๊ฒ€์ƒ‰ ํ‚ค์›Œ๋“œ๊ฐ€ ์ œํ’ˆ ์ด๋ฆ„ ํ•„๋“œ ๊ฐ’์— ํฌํ•จ๋œ ๊ฒฝ์šฐ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒ ์„ ํƒ๊ธฐ ํ™”๋ฉด์— โ€˜Genโ€™์„ ์ž…๋ ฅํ•˜๋ฉด, ์ œํ’ˆ ์ด๋ฆ„์— โ€˜Genโ€™์ด ํฌํ•จ๋œ ํ•ญ๋ชฉ๋งŒ ๊ฒ€์ƒ‰๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํŽ˜์ด์ง€๋ณ„ ๋ ˆ์ฝ”๋“œ ์ˆ˜ ์„ค์ •ํ•˜๊ธฐ

    ํ•œ ํŽ˜์ด์ง€(์Šคํฌ๋กค ๋‹ค์šด ์‹œ) ์กฐํšŒํ•  ๋ ˆ์ฝ”๋“œ ์ˆ˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์„ค์ •์€ ํŽ˜์ด์ง€(์Šคํฌ๋กค)๋‹น 50๊ฐœ์ž…๋‹ˆ๋‹ค.

    ํ•œ ๋ฒˆ์— ์„ ํƒํ•ด์•ผ ํ•  ๋ ˆ์ฝ”๋“œ ์ˆ˜๊ฐ€ ๋งŽ๋‹ค๋ฉด, โ€˜ํŽ˜์ด์ง€๋ณ„ ๋ ˆ์ฝ”๋“œ ์ˆ˜โ€™๋ฅผ ๋Š˜๋ ค๋ณด์„ธ์š”.

    ํ•ฉ๊ณ„ ์š”์•ฝํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ•˜๋‹จ์— ํ•ฉ๊ณ„๋ฅผ ํ‘œ์‹œํ•  ์—ด์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ์š”์•ฝ์„ ํ‘œ์‹œํ•˜๊ธฐ ์ „์—, ๊ธฐ๋ณธ ์„ค์ •์—์„œ โ€˜์š”์•ฝ ํ‘œ์‹œํ•˜๊ธฐโ€™ ์˜ต์…˜์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์—ด ๋„ˆ๋น„ ์„ค์ •ํ•˜๊ธฐ

    ์—ด์˜ ๋„ˆ๋น„๋Š” ํ”ฝ์…€(pixel) ๋‹จ์œ„๋กœ ์„ค์ •๋˜๋ฉฐ, ์ง€์ •ํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ๊ธฐ๋ณธ ์ตœ์†Œ ๋„ˆ๋น„๋Š” 150px๋กœ ์ž๋™ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

    ์—ด ๋„ˆ๋น„ ์˜ˆ์‹œ

    ์•„๋ž˜ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ๋Œ€๋ฆฌ์ ๊ฐ€, ์ดํŒ๊ฐ€, ์žฌ๊ณ , ์ˆ˜๋Ÿ‰ ๋“ฑ์˜ ์—ด์€ ๋ฐ์ดํ„ฐ ๋ฐ ์ž…๋ ฅ๋ž€ ํฌ๊ธฐ์— ๋น„ํ•ด ๋„ˆ๋น„๊ฐ€ ์ž‘๊ฑฐ๋‚˜ ํฝ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์—ด์˜ ๋„ˆ๋น„๋ฅผ ๊ณ ์ •ํ•˜์—ฌ ํฌ๊ธฐ๋ฅผ ์ผ์ •ํ•˜๊ฒŒ ๋งž์ถ”๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋”์—์„œ ๊ฐ ์—ด์˜ ๋„ˆ๋น„๋ฅผ 150~200px ์‚ฌ์ด๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ์ด์ „๋ณด๋‹ค ์—ด ๋„ˆ๋น„๊ฐ€ ๋” ์•ˆ์ •์ ์œผ๋กœ ๋ณด์ด๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์—ด ์ˆœ์„œ ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์ถ”๊ฐ€๋œ ์—ด์€ Drag & Drop์„ ์‚ฌ์šฉํ•˜์—ฌ ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์—ด ์ˆœ์„œ ๋ณ€๊ฒฝ ๋ฐฉ๋ฒ•

    1. ์›ํ•˜๋Š” ์—ด์˜ ๋งจ ์ขŒ์ธก ์•„์ด์ฝ˜()์„ ๋งˆ์šฐ์Šค๋กœ ํด๋ฆญํ•œ ์ƒํƒœ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

    2. ๋งˆ์šฐ์Šค๋ฅผ ํด๋ฆญํ•œ ์ƒํƒœ์—์„œ ์—ด์„ ์›ํ•˜๋Š” ์œ„์น˜๋กœ Drag & Drop ํ•ฉ๋‹ˆ๋‹ค.

    ์—ด ์ •๋ ฌ ์˜ˆ์‹œ

    ์—ด ์ˆœ์„œ ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์ถ”๊ฐ€๋œ ์—ด์€ Drag & Drop์„ ์‚ฌ์šฉํ•˜์—ฌ ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์—ด ์ˆœ์„œ ๋ณ€๊ฒฝ ๋ฐฉ๋ฒ•

    1. ์›ํ•˜๋Š” ์—ด์˜ ๋งจ ์ขŒ์ธก ์•„์ด์ฝ˜()์„ ๋งˆ์šฐ์Šค๋กœ ํด๋ฆญํ•œ ์ƒํƒœ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

    2. ๋งˆ์šฐ์Šค๋ฅผ ํด๋ฆญํ•œ ์ƒํƒœ์—์„œ ์—ด์„ ์›ํ•˜๋Š” ์œ„์น˜๋กœ Drag & Drop ํ•ฉ๋‹ˆ๋‹ค.

    ์—ด ์ •๋ ฌ ์˜ˆ์‹œ

    ์ผ๋ถ€ ํ•„๋“œ ๊ฐ’ ์ €์žฅ ์‹œ ์ œ์™ธํ•˜๊ธฐ

    ๊ธฐํšŒ ์ œํ’ˆ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์„ค์ •ํ•œ ๊ฒฝ์šฐ, ํŽธ์ง‘๊ธฐ์—์„œ ๋‹จ๊ฐ€์™€ ์ด์•ก์„ ๋ชจ๋‘ ํ‘œ์‹œํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐํšŒ ์ œํ’ˆ์—์„œ ๋‹จ๊ฐ€์™€ ์ด์•ก์€ ํŽธ์ง‘ ๊ฐ€๋Šฅํ•œ ํ•„๋“œ์ด์ง€๋งŒ, ๋™์‹œ์— ์ €์žฅํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์ด์•ก์€ ๋‚ด๋ถ€์ ์œผ๋กœ ๋‹จ๊ฐ€์™€ ์ˆ˜๋Ÿ‰์— ์˜ํ•ด ์ž๋™ ๊ณ„์‚ฐ๋˜์–ด ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

    ์ด๋•Œ, ์ด์•ก์„ ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์„ค์ •ํ•˜๋ฉด ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ๋นŒ๋” ์„ค์ •์— ์˜์กดํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ํ‘œ์‹œ๋˜๋”๋ผ๋„ ํ•ด๋‹น ํ•„๋“œ๊ฐ€ ํŽธ์ง‘ ๊ฐ€๋Šฅํ•œ ํ•„๋“œ๋กœ ์„ค์ •๋˜์–ด ์žˆ์œผ๋ฉด ๋‚ด๋ถ€์ ์œผ๋กœ ์ €์žฅ์ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

    ๋”ฐ๋ผ์„œ, ์ˆ˜์‹ ํ•„๋“œ์™€ ๊ฐ™์€ ์ฝ๊ธฐ ์ „์šฉ ํ•„๋“œ๋ฅผ ์ œ์™ธํ•˜๊ณ , ์ €์žฅํ•˜์ง€ ์•Š์•„์•ผ ํ•˜๋Š” ํ•„๋“œ์ธ ๊ฒฝ์šฐ ๋ฐ˜๋“œ์‹œ โ€˜์ €์žฅ ์•ˆ ํ•จโ€™ ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์Šคํƒ ๋‹ค๋“œ ๊ฐœ์ฒด์ธ ๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ์— ๋Œ€ํ•œ ์„ค์ •์ธ ๊ฒฝ์šฐ, ์ด์•ก ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ์ž๋™์œผ๋กœ โ€˜์ €์žฅ ์•ˆ ํ•จโ€™์ด ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.

    ํ…์ŠคํŠธ ์ •๋ ฌ ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์—ด ๊ฐ’์˜ ์ •๋ ฌ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ ฌ ์˜ต์…˜์€ ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ, ๊ฐ€์šด๋ฐ ์„ธ ๊ฐ€์ง€๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ธฐ๋ณธ๊ฐ’์€ ์™ผ์ชฝ ์ •๋ ฌ์ž…๋‹ˆ๋‹ค.

    ํ…์ŠคํŠธ ์ •๋ ฌ ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์—ด ๊ฐ’์˜ ์ •๋ ฌ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ ฌ ์˜ต์…˜์€ ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ, ๊ฐ€์šด๋ฐ ์„ธ ๊ฐ€์ง€๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ธฐ๋ณธ๊ฐ’์€ ์™ผ์ชฝ ์ •๋ ฌ์ž…๋‹ˆ๋‹ค.

    ํ…์ŠคํŠธ ์ •๋ ฌ ์˜ˆ์‹œ

    ํ™œ์„ฑํ™”

    ๋นŒ๋” ์„ค์ •์ด ์™„๋ฃŒ๋˜๊ณ , ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•œ ํ›„, ๋นŒ๋”๋ฅผ ํ™œ์„ฑํ™”ํ•˜์—ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ค€๋น„๋ฅผ ํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋”๊ฐ€ ํ™œ์„ฑํ™”๋˜์–ด์•ผ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ™œ์„ฑํ™”๋ฅผ ํ•ด์•ผ ํŽธ์ง‘๊ธฐ ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ํ‘œ์‹œํ•˜๊ธฐ

    ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ๋Š” ์ˆ˜์‹ ํ•„๋“œ๋ฅผ ์ œ์™ธํ•˜๊ณ  ๊ฐ’์„ ์ž…๋ ฅ๋ฐ›์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐ์ดํ„ฐ ํ‘œ์‹œ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋˜๋Š” ํ•„๋“œ๋Š” ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์„ค์ •ํ•˜์„ธ์š”.

    ์ฝ๊ธฐ ์ „์šฉ ์„ค์ • ์˜ˆ์‹œ

    ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ํ‘œ์‹œํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ(์—ด)์˜ ๊ณ ๊ธ‰ ์„ค์ • ๋ฉ”๋‰ด์—์„œ โ€˜์ฝ๊ธฐ ์ „์šฉ ๊ณ ๊ธ‰ ์„ค์ •โ€™์„ ํ†ตํ•ด ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ โ€˜โ€™ ๋งค๋‰ด์–ผ์„ ์ฐธ๊ณ ํ•˜์„ธ์š”.

    ๊ฐ€์ƒ ์—ด ์ถ”๊ฐ€ํ•˜๊ธฐ

    ๊ฐ€์ƒ ์—ด์€ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค)์„ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋‚˜ ๋‹จ์ˆœ ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ํ™”๋ฉด์— ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

    ํ˜„์žฌ ๊ฐ€์ƒ ์—ด์€ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ถ”ํ›„ ๋‹ค์–‘ํ•œ ์šฉ๋„๋กœ ํ™•์žฅ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

    ์„ค์ • ๋ฐฉ๋ฒ•

    1. ๊ฐ€์ƒ ์—ด ์ถ”๊ฐ€ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    2. ๋‚ด๋ถ€์ ์œผ๋กœ ์‚ฌ์šฉํ•  API๋ช…์„ ์ž…๋ ฅํ•˜๊ณ  ํ‘œ์‹œํ•  ๋ฐ์ดํ„ฐ์˜ ์œ ํ˜•์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. (API๋ช… ์ค‘๋ณต์€ ํ—ˆ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.)

    3. ํ™”๋ฉด์— ํ‘œ์‹œํ•  ๋ ˆ์ด๋ธ”์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋” ์ดˆ๊ธฐํ™”

    ๋นŒ๋” ์„ค์ •์„ ์ˆ˜์ • ์ค‘ ์ €์žฅํ•˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ, ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ทจ์†Œํ•˜๊ณ  ์„ค์ •์„ ์›๋ž˜ ์ƒํƒœ๋กœ ๋ณต์›ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ดˆ๊ธฐํ™” ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์„ธ์š”.

    ์ดˆ๊ธฐํ™”๋Š” ์ €์žฅ๋˜์ง€ ์•Š์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ๋งŒ ๋ณต์›ํ•˜๋ฉฐ, ์ด๋ฏธ ์ €์žฅ๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋˜๋Œ๋ฆด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์•ˆ์ „ํ•˜๊ฒŒ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ๋นŒ๋”๋ฅผ ๋ณต์ œํ•˜์—ฌ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

    v 1.39

    ๐Ÿ“ฆ Package Upgrade (v1.39.1)

    ๐Ÿ—“๏ธ Release Date

    2025. 4. 28.

    ๐Ÿ› Bug Fixes

    โš™๏ธ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ •

    ์กฐํšŒ ์„ ํƒ๊ธฐ์™€ ๊ด€๋ จ๋œ ์„ค์ •์ž…๋‹ˆ๋‹ค. ๋ ˆ์ฝ”๋“œ ์„ ํƒ ๋ฐฉ์‹ ๋ฐ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • ์กฐํšŒ ์„ ํƒ๊ธฐ ํ™”๋ฉด ๋กœ๋“œ ์‹œ, ๋ฐ์ดํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ์กฐํšŒ๋˜๋„๋ก ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ์„ค์ •์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    • ํ•„ํ„ฐ ๊ฒ€์ƒ‰์„ ๊ธฐ๋ณธ์œผ๋กœ ํŽผ์ณ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ํ•„ํ„ฐ๋ฅผ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ์ด ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•˜์„ธ์š”.

    • ๋™์ผํ•œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ค‘๋ณต ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ํŽธ์ง‘๊ธฐ ์‹คํ–‰ ์‹œ ์กฐํšŒ ์„ ํƒ๊ธฐ์™€ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์˜ ํƒ€์ดํ‹€์„ ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋ ˆ์ด๋ธ”๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๋™์ผํ•œ ๊ฐœ์ฒด์— ๋Œ€ํ•ด ์—ฌ๋Ÿฌ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋”๋ผ๋„, ํŽธ์ง‘๊ธฐ์˜ ์šฉ๋„์— ๋”ฐ๋ผ ํƒ€์ดํ‹€์„ ๋‹ค๋ฅด๊ฒŒ ํ‘œ์‹œํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋ ˆ์ด๋ธ”์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒ ์„ ํƒ๊ธฐ๋กœ ์ด๋™ํ•˜๋Š” ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”๋„ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ํ•ด๋‹น ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝ์€ ์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ ๋ ˆ์ด๋ธ” ๋ฉ”๋‰ด๋ฅผ ํด๋ฆญํ•˜์—ฌ ๊ฐ„๋‹จํžˆ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํƒ€์ดํ‹€ ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ์™€ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์˜ ๊ฐ๊ฐ์˜ ํƒ€์ดํ‹€ ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ,

    ๋ ˆ์ฝ”๋“œ ์ค‘๋ณต ์„ ํƒ ํ—ˆ์šฉ

    ๋™์ผํ•œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์ค‘๋ณต ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ์ผ๋ฐ˜ ์„ ํƒ๊ณผ ์ค‘๋ณต ์„ ํƒ์˜ ์ฐจ์ด

    ์ผ๋ฐ˜ ์„ ํƒ

    ์ผ๋ฐ˜์ ์œผ๋กœ ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜๋ฉด ์„ ํƒ๋˜๊ฑฐ๋‚˜ ํ•ด์ œ๋ฉ๋‹ˆ๋‹ค.

    ์ค‘๋ณต ์„ ํƒ

    ์ค‘๋ณต ์„ ํƒ์˜ ๊ฒฝ์šฐ, ๋™์ผํ•œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ์„ ํƒํ•˜๋ฉด ์„ ํƒํ•œ ํšŸ์ˆ˜๋งŒํผ ๋ผ์ธ ์•„์ดํ…œ์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ ํ™”๋ฉด ๋น„์œจ ์กฐ์ ˆํ•˜๊ธฐ

    ํ™”๋ฉด ๋น„์œจ์€ 100%, 90%, 80%๋ฅผ ์ง€์›ํ•˜๋ฉฐ, ๊ธฐ๋ณธ๊ฐ’์€ 100%๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ™”๋ฉด ๋น„์œจ์„ 100% ์„ค์ •ํ–ˆ์„ ๋•Œ

    ์ผ๋ฐ˜์ ์ธ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ๋ถ€๋ชจ ๊ฐœ์ฒด (Parent Object)

    ๋ถ€๋ชจ ๊ฐœ์ฒด๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์˜ ์ƒ์œ„ ๊ฐœ์ฒด๋กœ, Master-Detail ๋˜๋Š” Lookup ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ ํŽ˜์ด์ง€์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ๋นŒ๋”์—์„œ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ, ํ•˜์œ„ ๊ฐœ์ฒด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฐœ์ฒด๋งŒ ๊ฒ€์ƒ‰์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ ํŽ˜์ด์ง€์—์„œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ์€ ๋นŒ๋”์—์„œ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์›ํ•˜๋Š” ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์กฐํšŒ ์„ ํƒ๊ธฐ ์ฐจ๋‹จํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ๋ฅผ ๊ฑด๋„ˆ๋›ฐ๊ณ  ๋ฐ”๋กœ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋กœ ์ „ํ™˜ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ, ์กฐํšŒ ์„ ํƒ๊ธฐ ์ฐจ๋‹จ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•˜์„ธ์š”. ๋˜ํ•œ, ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ์กฐํšŒ ์„ ํƒ๊ธฐ๋ฅผ ์ฐจ๋‹จํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ฐจ๋‹จ ์กฐ๊ฑด์„ ์„ค์ •ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํŠน์ • ํ•„๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ์–ด๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ํ•„๋“œ๋Š” Boolean ์œ ํ˜•์ด์–ด์•ผ ํ•˜๋ฉฐ, ๊ฐ’์ด true์ธ ๊ฒฝ์šฐ ์กฐํšŒ ์„ ํƒ๊ธฐ๊ฐ€ ์ฐจ๋‹จ๋ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๊ฐฑ์‹ ๋œ ๊ธฐํšŒ์—์„œ ์ œํ’ˆ ์ถ”๊ฐ€ ์ฐจ๋‹จํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ๊ฐฑ์‹ ๋œ ๊ธฐํšŒ์ธ ๊ฒฝ์šฐ ์ œํ’ˆ ์ถ”๊ฐ€(๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€)๋ฅผ ์ฐจ๋‹จํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ์˜ ๊ฐฑ์‹ ๋จ(IsRenewal__c) ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฐจ๋‹จ ์กฐ๊ฑด์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ์ž๋™ ๋ฒˆํ˜ธ ์„ค์ •ํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ์ €์žฅ ์‹œ ์ž๋™ ๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ํŠนํžˆ ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ๊ฐ ๋ผ์ธ ์•„์ดํ…œ์„ ๊ตฌ๋ถ„ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

    ์ž๋™ ๋ฒˆํ˜ธ๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์—์„œ ์ €์žฅํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ํ•ด๋‹น๋˜๋ฉฐ, Salesforce ๋‚ด๋ถ€ ํŠธ๋žœ์žญ์…˜(์˜ˆ: API, ๋ฐ์ดํ„ฐ ๋กœ๋”, ๋˜๋Š” ์ˆ˜๋™ ์‚ญ์ œ)์—์„œ๋Š” ์ž๋™์œผ๋กœ ๋ฒˆํ˜ธ๊ฐ€ ํ• ๋‹น๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ์ œํ’ˆ ์˜ต์…˜๊ณผ ํ•จ๊ป˜ ๋“ฑ๋ก๋œ ๊ธฐํšŒ ์ œํ’ˆ์— ์ž๋™ ๋ฒˆํ˜ธ ํ• ๋‹นํ•˜๊ธฐ

    ์†Œ์Šค ํ•„๋“œ: ๋ถ€๋ชจ ๋˜๋Š” ์กฐํšŒ์˜ ํŠน์ • ํ•„๋“œ ๊ฐ’์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ• ๋‹นํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ์‹œ, ๋ถ€๋ชจ ๊ฐœ์ฒด ๋˜๋Š” ์กฐํšŒ ๊ฐœ์ฒด์˜ ํŠน์ • ํ•„๋“œ ๊ฐ’์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์†Œ์Šค ํ•„๋“œ ๊ฐ’์€ ๋ผ์ธ ์•„์ดํ…œ์ด ์ตœ์ดˆ ์ถ”๊ฐ€๋  ๋•Œ๋งŒ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๊ธฐํšŒ ์ œํ’ˆ์˜ ๋‹จ๊ฐ€๋ฅผ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์˜ ๋‹จ๊ฐ€๋กœ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ• ๋‹นํ•˜๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ • (Setup Lookup Selector)

    ๋ผ์ธ ์•„์ดํ…œ์„ ๋“ฑ๋กํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ์ œํ’ˆ๊ณผ ๊ฐ™์€ ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ค‘ ์›ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜๊ณ  ์ˆ˜๋Ÿ‰ ๋“ฑ์„ ์„ค์ •ํ•˜์—ฌ ๋ผ์ธ ์•„์ดํ…œ์„ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ ์„ค์ •์€ ์กฐํšŒ ๊ฐœ์ฒด ๊ฒ€์ƒ‰ ์‹œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๋ ˆ์ด์•„์›ƒ์„ ์„ค์ •ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

    ์กฐํšŒ ๊ฐœ์ฒด (Lookup Object)

    ์กฐํšŒ ๊ฐœ์ฒด๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์—์„œ ์ฐธ์กฐํ•˜๋Š” ๊ฐœ์ฒด๋กœ, ์‚ฌ์šฉ์ž๋Š” ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    ๊ฐ’์„ ์ˆจ๊น€ ์ฒ˜๋ฆฌํ•˜์—ฌ ๋‚ด๋ถ€์ ์œผ๋กœ ๊ณ„์‚ฐ ๋ฐ ๋กœ์ง์— ์‚ฌ์šฉํ•˜๊ธฐ

    ์ˆจ๊น€ ์„ค์ •์€ ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฝ์šฐ์— ์ฃผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค:

    ๊ณ„์‚ฐ์‹์— ํ•„์š”ํ•œ ํ•„๋“œ ๊ฐ’ ์ฒ˜๋ฆฌ

    ๊ณ ๊ธ‰ ์„ค์ •์—์„œ ๊ณ„์‚ฐ์‹์— ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ํ•„๋“œ ๊ฐ’์ด ์žˆ๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ํ•„๋“œ๋Š” ๋ผ์ธ ์•„์ดํ…œ ์—ด์— ์ถ”๊ฐ€๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‚ฌ์šฉ์ž๊ฐ€ ๋ชจ๋“  ํ•„๋“œ๋ฅผ ํ™”๋ฉด์—์„œ ๋ณผ ํ•„์š”๋Š” ์—†๊ธฐ ๋•Œ๋ฌธ์—, ํ•„๋“œ๋ฅผ ์ˆจ๊น€ ์ฒ˜๋ฆฌํ•˜์—ฌ ํ™”๋ฉด์— ๋…ธ์ถœ๋˜์ง€ ์•Š๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ์ˆ˜์‹ ํ•„๋“œ ์˜ค๋ฅ˜ ๋ฐฉ์ง€

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์˜ ์ˆ˜์‹ ํ•„๋“œ๋Š” ์ €์žฅ ์‹œ ๋ชจ๋“  ์ˆ˜์‹์„ ์žฌ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ, ํŠน์ • ์ˆ˜์‹์— ํ•„์š”ํ•œ ํ•„๋“œ ๊ฐ’์ด Null์ด๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ˆจ๊น€ ์ฒ˜๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๋‹น ํ•„๋“œ๋ฅผ ์—ด์— ์ถ”๊ฐ€ํ•˜๊ณ  ํ•„์š”ํ•œ ๊ฐ’์„ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.

    ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋ผ์ธ ์•„์ดํ…œ ์‚ญ์ œ ์ œ์–ดํ•˜๊ธฐ

    ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ์˜ ์ƒํƒœ์— ๋”ฐ๋ผ ์‚ญ์ œ๋ฅผ ์ œ์–ดํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, Boolean ์œ ํ˜•์˜ ํ•„๋“œ๋ฅผ ์ง€์ •ํ•˜์—ฌ ์‚ญ์ œ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€์ •๋œ ํ•„๋“œ ๊ฐ’์ด true(์ฐธ)์ธ ๊ฒฝ์šฐ, ํ•ด๋‹น ๋ผ์ธ ์•„์ดํ…œ์— ๋Œ€ํ•ด ์‚ญ์ œ ๋ฒ„ํŠผ์„ ๋น„ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์‚ญ์ œ ์ œ์–ด๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์—์„œ๋งŒ ์ž‘๋™ํ•˜๋ฉฐ, Salesforce ๋‚ด๋ถ€ ํŠธ๋žœ์žญ์…˜(์˜ˆ: API, ๋ฐ์ดํ„ฐ ๋กœ๋”, ๋˜๋Š” ์ˆ˜๋™ ์‚ญ์ œ)์—์„œ๋Š” ์ œ์–ด๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜ ํ™œ์„ฑํ™”

    ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋นŒ๋”์—์„œ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์„ค์ •์€ ๊ฐœ์ฒด ์—ฐ๊ฒฐ ๋‹จ๊ณ„์˜ ์กฐํšŒ ๊ฐœ์ฒด ์˜์—ญ์—์„œ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋‹จ, ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •์€ ์Šคํƒ ๋‹ค๋“œ ์„ค์ •(๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ)์ธ ๊ฒฝ์šฐ์—๋งŒ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์—์„œ๋งŒ ์ œํ’ˆ ์˜ต์…˜ ์ œ๊ณต

    ์•ž์„œ ์•ˆ๋‚ดํ•œ ๊ฒƒ์ฒ˜๋Ÿผ, ์ œํ’ˆ ์˜ต์…˜์€ ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์—์„œ๋งŒ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜์€ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)์„ ๊ธฐ์ค€์œผ๋กœ ์ œํ’ˆ๊ณผ ๋‹จ๊ฐ€ ์ •๋ณด๋ฅผ ์กฐํšŒํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์„ธ์ผ์ฆˆํฌ์Šค์—์„œ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ๊ณผ ์œ ์ผํ•˜๊ฒŒ ๊ด€๊ณ„๋ฅผ ๋งบ๊ณ  ์žˆ๋Š” ๊ธฐํšŒ(

    ์žฅ์น˜์— ๋งž๊ฒŒ ๋ฐ˜์‘ํ˜• ํ™”๋ฉด ์„ค์ •ํ•˜๊ธฐ

    ๋””๋ฐ”์ด์Šค ์œ ํ˜•(๋ฐ์Šคํฌํ†ฑ, ๋ชจ๋ฐ”์ผ)์— ๋”ฐ๋ผ ๋ฐ˜์‘ํ˜• ํ™”๋ฉด์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋””์Šคํ”Œ๋ ˆ์ด ํ™˜๊ฒฝ์— ๋งž์ถฐ ํŽธ์ง‘๊ธฐ์˜ ํฌ๊ธฐ์™€ ๊ตฌ์„ฑ์„ ์กฐ์ •ํ•˜์—ฌ ์ตœ์ ์˜ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์Šคํฌํ†ฑ์—์„œ๋Š” ๋” ๋งŽ์€ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๊ณ , ๋ชจ๋ฐ”์ผ์—์„œ๋Š” ๊ฐ„์†Œํ™”๋œ ํ™”๋ฉด์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ชจ๋“  ๋””๋ฐ”์ด์Šค์—์„œ ๊ฐ„์†Œํ™”๋œ ํ™”๋ฉด์œผ๋กœ ๋ณด์ด๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๋ฉด, ์žฅ์น˜๋ฅผ ๋ชจ๋ฐ”์ผ๋กœ ์„ค์ •ํ•˜์„ธ์š”. ์ด๋ฅผ ํ†ตํ•ด ๋””๋ฐ”์ด์Šค ์ƒ๊ด€ ์—†์ด ๊ฐ„๋‹จํ•˜๊ณ  ์ผ๊ด€๋œ ํ™”๋ฉด์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์—ด ์ถ”๊ฐ€ํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์— ํ‘œ์‹œ ๋ฐ ์ž‘์—…ํ•  ํ•„๋“œ(์—ด)์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ๋ฏธ๋ฆฌ ์ถ”๊ฐ€๋œ ์กฐํšŒ ์ฐธ์กฐ ํ•„๋“œ๋Š” ์‚ญ์ œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ํ•ด๋‹น ํ•„๋“œ๋ฅผ ํ‘œ์‹œํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด, ์ˆจ๊น€ ์„ค์ •์„ ์ฒดํฌํ•˜์„ธ์š”.

    ์ œํ’ˆ ์˜ต์…˜ (Product Option)

    ๋ผ์ธ ์•„์ดํ…œ์— ํ•˜์œ„ ์˜ต์…˜ ์ œํ’ˆ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ํŠน์ • ์ œํ’ˆ์˜ ๊ตฌ์„ฑ ์š”์†Œ(์˜ˆ: ์ถ”๊ฐ€ ์„œ๋น„์Šค, ๋ถ€๊ฐ€ ์ œํ’ˆ)๋ฅผ ํ•จ๊ป˜ ๋“ฑ๋กํ•˜๊ฑฐ๋‚˜ ๊ด€๋ฆฌํ•˜๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์€ ์ผ๋ถ€ ์Šคํƒ ๋‹ค๋“œ ๊ฐœ์ฒด์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค:

    • ๊ธฐํšŒ

    ๋นŒ๋” ์…‹์—… ์ ˆ์ฐจ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ์˜ ์ ˆ์ฐจ๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค:

    1

    ๋นŒ๋”์—์„œ ์„ค์ •ํ•ด์•ผ ํ•˜๋Š” ๊ฐ€์žฅ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์‚ฌ์šฉํ•  ๊ฐœ์ฒด๋“ค์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ด€๊ณ„๋Š” ๋ฐ˜๋“œ์‹œ Junction ๊ด€๊ณ„ ๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ผ์•ผ ํ•˜๋ฉฐ, ๋ถ€๋ชจ(Parent), ๋ผ์ธ ์•„์ดํ…œ(Line Item), ์กฐํšŒ(Lookup) ๊ฐœ์ฒด๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    2

    ๋ผ์ธ ์•„์ดํ…œ์„ ๋“ฑ๋กํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ์ œํ’ˆ๊ณผ ๊ฐ™์€ ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ์ค‘ ์›ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜๊ณ  ์ˆ˜๋Ÿ‰ ๋“ฑ์„ ์„ค์ •ํ•˜์—ฌ ๋ผ์ธ ์•„์ดํ…œ์„ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ ์„ค์ •์€ ์กฐํšŒ ๊ฐœ์ฒด ๊ฒ€์ƒ‰ ์‹œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ ๋ ˆ์ด์•„์›ƒ์„ ์„ค์ •ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

    ๋ฏธ๋ฆฌ๋ณด๊ธฐ

    ํŽธ์ง‘๊ธฐ๋ฅผ ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์—, ๋นŒ๋”์—์„œ ์„ค์ •ํ•œ ๋‚ด์šฉ์ด ์–ด๋–ป๊ฒŒ ํŽธ์ง‘๊ธฐ๋กœ ๊ตฌํ˜„๋˜๋Š”์ง€ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    ํ˜„์žฌ๋Š” ๋ณ€๊ฒฝ๋œ ์„ค์ •์„ ๋ฐ˜๋“œ์‹œ ์ €์žฅํ•ด์•ผ๋งŒ, ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์ด ๋ฐ˜์˜๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ดˆ๊ธฐ ๊ฐ’ ๋ฐ ๊ณ„์‚ฐ ์ ์šฉ ์ˆœ์„œ

    ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ๋ฐ ๊ฐ’ ๋ณ€๊ฒฝ ์‹œ ๊ณ„์‚ฐ ์ˆ˜์‹, ์ˆ˜์‹ ํ•„๋“œ, ๋ฐ์ดํ„ฐ ์†Œ์Šค ๋“ฑ ์ ์šฉ๋˜๋Š” ์ˆœ์„œ์ž…๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ์‹œ

    ํ•„๋“œ๊ฐ’ ๋ณ€๊ฒฝ ์‹œ

    ๊ธฐ๋ณธ๊ฐ’ ์„ค์ •ํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ์‹œ ๊ธฐ๋ณธ๊ฐ’์„ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ํ…์ŠคํŠธ ๋˜๋Š” ์ˆซ์ž๋งŒ ์„ค์ • ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ๊ฐ’์€ ๋ผ์ธ ์•„์ดํ…œ์ด ์ตœ์ดˆ ์ถ”๊ฐ€๋  ๋•Œ๋งŒ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ๋นŒ๋” ์„ค์ •์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„๋œ ์‚ฌ์šฉ์ž ๋งž์ถคํ˜• ํŽธ์ง‘๊ธฐ์ž…๋‹ˆ๋‹ค. ์ด ํŽธ์ง‘๊ธฐ๋ฅผ ํ†ตํ•ด ์Šคํƒ ๋‹ค๋“œ ํŽธ์ง‘ ํ™”๋ฉด์—์„œ ์ œ๊ณต๋˜์ง€ ์•Š๋Š” ์ž๋™ ๊ณ„์‚ฐ, ์ถ”๊ฐ€ ์ฐธ์กฐ ๋ฐ์ดํ„ฐ ํ‘œ์‹œ ๋“ฑ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€ ํ™”๋ฉด์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค:

    ์กฐํšŒ ์„ ํƒ๊ธฐ

    ์กฐํšŒ ์„ ํƒ๊ธฐ ํ™”๋ฉด์—์„œ๋Š” ๋ผ์ธ ์•„์ดํ…œ์— ์ถ”๊ฐ€ํ•  ํ•ญ๋ชฉ์„ ์„ ํƒํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์•„์ดํ…œ์„ ์„ ํƒํ•˜์—ฌ ๋ผ์ธ ์•„์ดํ…œ์— ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐํšŒ์—์„œ ๊ธฐํšŒ ์ œํ’ˆ์„ ์ถ”๊ฐ€ํ•  ๋•Œ ์ œํ’ˆ์„ ์„ ํƒํ•˜๋Š” ํ™”๋ฉด์„ ๋– ์˜ฌ๋ฆฌ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด ํ™”๋ฉด์ด ๋ฐ”๋กœ ์กฐํšŒ ์„ ํƒ๊ธฐ์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

    ๋กœ๋“œ ์‹œ ์ „์ฒด ๊ฒ€์ƒ‰

    ์กฐํšŒ ์„ ํƒ๊ธฐ ํ™”๋ฉด ๋กœ๋“œ ์‹œ, ๋ฐ์ดํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ์กฐํšŒ๋˜๋„๋ก ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ด ์„ค์ •์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๋กœ๋“œ ์‹œ ์ „์ฒด ๊ฒ€์ƒ‰์ด ๋น„ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ

    ๋กœ๋“œ ์‹œ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž๋™์œผ๋กœ ์กฐํšŒ๋˜์ง€ ์•Š์œผ๋ฉฐ, ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰์„ ํ†ตํ•ด์„œ๋งŒ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐ์ดํ„ฐ ์กฐํšŒ๊ฐ€ ๋А๋ฆฌ๊ฑฐ๋‚˜, ๋ฐ์ดํ„ฐ์†Œ์Šค ๊ณ ๊ธ‰ ์„ค์ •์— ๋ณต์žกํ•œ ์ž‘์—… ๋˜๋Š” ์‹œ๊ฐ„์ด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ์ž‘์—…์ด ํฌํ•จ๋œ ๊ฒฝ์šฐ ํ•ด๋‹น ๊ธฐ๋Šฅ์„ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

    3

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ •

    ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์˜ ์†์„ฑ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์•ž์„œ ์„ ํƒ ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ณ„๋กœ ๊ฐ€๊ฒฉ, ํ• ์ธ์œจ, ์ˆ˜๋Ÿ‰ ๋“ฑ์˜ ์†์„ฑ ํ•„๋“œ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

    4

    ๋ฏธ๋ฆฌ๋ณด๊ธฐ

    ๋นŒ๋” ์„ค์ •์„ ์™„๋ฃŒํ•œ ํ›„, ํ™œ์„ฑํ™”ํ•˜๊ธฐ ์ „์— ๋ฐ˜๋“œ์‹œ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด ์„ค์ •๋œ ๊ธฐ๋Šฅ์ด ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. ์ด๋ฅผ ํ†ตํ•ด ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์˜ค๋ฅ˜๋‚˜ ๋ถˆ์™„์ „ํ•œ ์„ค์ •์„ ์‚ฌ์ „์— ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    5

    ํ™œ์„ฑํ™”

    ๋นŒ๋” ์„ค์ •์ด ์™„๋ฃŒ๋˜๋ฉด ํ™œ์„ฑํ™”(Activate)๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํ™œ์„ฑํ™”๋ฅผ ํ†ตํ•ด ํŽธ์ง‘๊ธฐ ๊ธฐ๋Šฅ์ด ์ ์šฉ๋˜๋ฉฐ, ์ดํ›„ ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    6

    ๋ฒ„ํŠผ ์ƒ์„ฑํ•˜๊ธฐ

    ์„ค์ •์„ ์™„๋ฃŒํ•œ ํ›„, ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•˜์—ฌ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ•˜๋ฉด ์‚ฌ์šฉ์ž๋Š” ํ•ด๋‹น ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ฐœ์ฒด ์—ฐ๊ฒฐํ•˜๊ธฐ
    ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ •
    Junction ๊ด€๊ณ„ (many-to-many)
    ๋นŒ๋”
    Standard ํ™”๋ฉด์—์„œ ์ œํ’ˆ ์ถ”๊ฐ€ ํ›„ ๋‹จ๊ฐ€ ๋˜๋Š” ์ˆ˜๋Ÿ‰ ๋ณ€๊ฒฝ ์‹œ ์ด์•ก์ด ์ž๋™ ๊ณ„์‚ฐ์ด ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋กœ ์Šคํƒ ๋‹ค๋“œ์˜ ์ œํ’ˆ ํŽธ์ง‘์„ ์žฌ๊ตฌํ˜„ํ•˜์—ฌ ์žฌ๊ณ  ํ‘œ์‹œ, ์ž๋™ ๊ณ„์‚ฐ, ํ• ์ธ์œจ ๋“ฑ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค.

    ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•œ ์บ์‹ฑ ์บ์‹ฑ์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์กฐํšŒํ•˜๊ณ  ์•ˆ์ •์ ์ธ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ, ๋ฐ์ดํ„ฐ์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ๋Š” ๊ฒฝ์šฐ ์ตœ์‹  ์ƒํƒœ๋กœ ์กฐํšŒ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํŽ˜์ด์ง€๋ณ„ ๋ ˆ์ฝ”๋“œ ์ˆ˜ ํ•œ ํŽ˜์ด์ง€(์Šคํฌ๋กค)์— ํ‘œ์‹œํ•  ๋ ˆ์ฝ”๋“œ ์ˆ˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์„ค์ •์€ ํŽ˜์ด์ง€(์Šคํฌ๋กค)๋‹น 50๊ฐœ์ž…๋‹ˆ๋‹ค.

  • ๋กœ๋“œ ์‹œ ์ „์ฒด ๊ฒ€์ƒ‰
    ํ•„ํ„ฐ ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ
    ์ค‘๋ณต ์„ ํƒ ํ—ˆ์šฉ
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๋ฒ„ํŠผ
    ๋นŒ๋” - ๊ฐœ์ฒด ์—ฐ๊ฒฐ ๋‹จ๊ณ„
    ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ ๊ธฐํšŒ ๋ ˆ์ฝ”๋“œ ํŽ˜์ด์ง€์—์„œ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    1

    ์กฐํšŒ ํ•„๋“œ ์„ค์ •

    ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ๊ฒ€์ƒ‰ ๊ฒฐ๊ณผ์— ํ‘œ์‹œํ•  ํ•„๋“œ(์—ด)๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ๊ฐ ํ•„๋“œ(์—ด)์˜ ์†์„ฑ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋˜ํ•œ, ๋ฐ์ดํ„ฐ ์†Œ์Šค์—์„œ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€์ƒ ์—ด์„ ์ถ”๊ฐ€ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    2

    ๋ฐ์ดํ„ฐ์†Œ์Šค

    ์กฐํšŒ ๊ฐœ์ฒด ๋ ˆ์ฝ”๋“œ ์™ธ์— ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ๊ฐœ์ฒด๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋˜ํ•œ, Apex Class๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณต์žกํ•œ ๋กœ์ง์ด๋‚˜ ์™ธ๋ถ€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€ ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ํ‘œ์‹œํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์—์„œ๋Š” ์ถ”๊ฐ€๋œ ๋ผ์ธ ์•„์ดํ…œ์„ ๊ด€๋ฆฌ ๋ฐ ํŽธ์ง‘ํ•ฉ๋‹ˆ๋‹ค. ๋ผ์ธ ์•„์ดํ…œ๋ณ„ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๊ณ„์‚ฐ๋œ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์ฃผ์š” ์ž‘์—… ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค.

    (์ด๋ฏธ์ง€)

    ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์„ค์ •ํ•˜๊ธฐ

    ํ™œ์šฉ ์‚ฌ๋ก€

    ํŽธ์ง‘๊ธฐ์˜ Aura Component ํ™œ์šฉํ•˜๊ธฐ

    1

    ์กฐํšŒ ์ฐธ์กฐ ํ•„๋“œ ์„ ํƒํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์—์„œ ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๋Š” ํ•„๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    2

    ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰ ์„ค์ •ํ•˜๊ธฐ

    ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ•  ๋•Œ, ์–ด๋–ค ํ•„๋“œ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ๊ฒ€์ƒ‰ํ• ์ง€๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์กฐํšŒ ๊ฐœ์ฒด์˜ Name ํ•„๋“œ๊ฐ€ ๊ฒ€์ƒ‰ ๊ธฐ์ค€์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

    3

    ์กฐํšŒ ์„ ํƒ๊ธฐ ์ฐจ๋‹จํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒ ์„ ํƒ๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ , ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๋งŒ ์›ํ•˜๋Š” ๊ฒฝ์šฐ, ์กฐํšŒ ์„ ํƒ๊ธฐ๋ฅผ ์ฐจ๋‹จํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์กฐ๊ฑด์— ๋”ฐ๋ผ ์กฐํšŒ ์„ ํƒ๊ธฐ๋ฅผ ์ฐจ๋‹จํ•˜๊ฑฐ๋‚˜ ํ™œ์„ฑํ™”ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    4

    ํ•„ํ„ฐ ๋ฐ ์ •๋ ฌ ์ˆœ์„œ ์„ค์ •ํ•˜๊ธฐ

    ํ•„ํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ์กฐํšŒํ•˜๊ณ , ์กฐํšŒ๋œ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•ด ์›ํ•˜๋Š” ์ •๋ ฌ ์ˆœ์„œ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Features

    ๊ณตํ†ต

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์˜ต์…˜ ๊ธฐ๋Šฅ ๋น„ํ™œ์„ฑํ™” ๊ธฐ์กด์— ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ๊ฒฝ์šฐ ๊ธฐ๋Šฅ์€ ๊ณ„์† ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋”

    • ๋ผ์ธ ์•„์ดํ…œ์˜ ๊ฐ€์ƒ ์—ด์ด ์ˆซ์ž ๋˜๋Š” ํ†ตํ™” ์œ ํ˜•์ธ ๊ฒฝ์šฐ, ์ž๋ฆฟ์ˆ˜ ํ‘œ์‹œ ๋ฐ ๊ณ„์‚ฐ์‹ ์ ์šฉ ๊ธฐ๋Šฅ ์ œ๊ณต

    • ๋ผ์ธ ์•„์ดํ…œ ์—ด์—์„œ ํ•„์ˆ˜ ๋ฐ ์ฝ๊ธฐ ์ „์šฉ์„ ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ • ์ œ๊ณต

    • ๋ผ์ธ ์•„์ดํ…œ์˜ ์ฐธ์กฐํ˜• ์ปฌ๋Ÿผ ์„ค์ •์—์„œ ํ•„ํ„ฐ ๋„๊ตฌ ์ œ๊ณต

    • ํ•„ํ„ฐ ๋„๊ตฌ์—์„œ SOQL ์กฐ๊ฑด์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๊ธฐ๋ณธ ํ•„ํ„ฐ ์„ค์ •๊ณผ โ€˜ANDโ€™ ์กฐ๊ฑด์œผ๋กœ ์ž๋™ ๊ฒฐํ•ฉ๋˜๋„๋ก ์ˆ˜์ •

    ํŽธ์ง‘๊ธฐ

    • ๋ผ์ธ ์•„์ดํ…œ ์—ด์˜ ๋„ˆ๋น„๊ฐ€ ์„ค์ •๋˜์–ด ์žˆ์ง€ ์•Š์€ ๊ฒฝ์šฐ, ๊ธฐ๋ณธ์ ์œผ๋กœ ์ตœ์†Œ ๋„ˆ๋น„ 150px๋กœ ์ ์šฉ๋˜์–ด ์ง€๋‚˜์น˜๊ฒŒ ์ข๊ฒŒ ํ‘œ์‹œ๋˜๋Š” ํ˜„์ƒ ํ•ด์†Œ

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐ€์ƒ ์—ด์— ์ž๋ฆฟ์ˆ˜ ํ‘œ์‹œ ๋ฐ ๊ณ„์‚ฐ์‹ ์„ค์ •

    ๊ธฐ์กด์—๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐ€์ƒ ์—ด์€ ๊ทธ์ € ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(๋ฐ์ดํ„ฐ์†Œ์Šค)์˜ ๋ฐ์ดํ„ฐ ํ‘œ์‹œ ์šฉ๋„๋กœ๋งŒ ์‚ฌ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ฒ„์ „์—์„œ๋Š” ๊ฐ€์ƒ ์—ด ์œ ํ˜•์ด ํ†ตํ™” ๋˜๋Š” ์ˆซ์ž์ธ ๊ฒฝ์šฐ ์ž๋ฆฟ์ˆ˜ ํ‘œ์‹œ(Scale)์™€ ๊ณ„์‚ฐ์‹(์ˆ˜์‹, ํ• ์ธ์œจ, ๊ธฐ๊ฐ„)์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋ผ์ธ ์•„์ดํ…œ ์—ด์˜ ํ•„์ˆ˜ ์—ฌ๋ถ€ ๋˜๋Š” ์ฝ๊ธฐ ์ „์šฉ ์ƒํƒœ๋กœ ์ œ์–ดํ•˜๊ธฐ

    ๋ถ€๋ชจ, ์กฐํšŒ, ๋ผ์ธ ์•„์ดํ…œ์˜ ํ•„๋“œ ๊ฐ’์— ๋”ฐ๋ผ ํ•„์ˆ˜ ์—ฌ๋ถ€์™€ ์ฝ๊ธฐ ์ „์šฉ ์ƒํƒœ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ธ ์•„์ดํ…œ์˜ ๊ฒฝ์šฐ ์ปฌ๋Ÿผ์— ์ถ”๊ฐ€๋˜์–ด ์žˆ๋Š” ํ•„๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ์„ ๋•Œ ์กฐ๊ฑด์„ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋”์˜ ํ•„ํ„ฐ ๋„๊ตฌ ๋ณ€๊ฒฝ์‚ฌํ•ญ

    ๊ธฐ์กด์—๋Š” SOQL์„ ์ง์ ‘ ์ž…๋ ฅํ•˜๋Š” ๊ฒฝ์šฐ AND ๋˜๋Š” OR๋ฅผ ์•ž์— ์ž‘์„ฑํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค.

    ํ•˜์ง€๋งŒ ์ด๋ฒˆ ๋ฒ„์ „๋ถ€ํ„ฐ๋Š” ์ž๋™์œผ๋กœ AND ์กฐ๊ฑด์œผ๋กœ ๊ฒฐํ•ฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋”

    • Apex ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์—์„œ Key ์„ ํƒ ์‹œ, ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ๊ฐ€ ๊ฒ€์ƒ‰๋˜์–ด ์ž˜๋ชป ๋งคํ•‘๋˜์—ˆ๋˜ ๋ฌธ์ œ ์ˆ˜์ •

    • ์กฐํšŒ ๋ฐ ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ปฌ๋Ÿผ ์ˆœ์„œ๋ฅผ ๋ณ€๊ฒฝํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋˜ JavaScript ์˜ค๋ฅ˜ ์ˆ˜์ •

    • ๊ฐœ์ฒด ๊ธฐ๋ฐ˜ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์—์„œ ํ•„ํ„ฐ ์„ค์ • ์‹œ ์กฐํšŒ ๊ฐœ์ฒด ํ•„๋“œ ๋ฐ”์ธ๋”ฉ ๊ธฐ๋Šฅ ์ œ๊ฑฐ -> ํ•ด๋‹น ๊ธฐ๋Šฅ์€ ๋‚ด๋ถ€์ ์œผ๋กœ ์ด์Šˆ๊ฐ€ ์žˆ์–ด ๊ธฐ๋Šฅ์„ ์ œ๊ฑฐํ•จ ์ถ”ํ›„ ๋ณ„๋„์˜ UI/UX๋ฅผ ํ†ตํ•ด ๋‹ค์‹œ ์ œ๊ณต๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ

    • ํŒจํ‚ค์ง€ ๋ผ์ด์„ ์Šค๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ, โ€œInternal Errorโ€ ๋Œ€์‹  โ€œ๋ผ์ด์„ ์Šค๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹คโ€ ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜์—ฌ ์‚ฌ์šฉ์ž ํ˜ผ๋ž€ ํ•ด์†Œ

    • ํ•„์ˆ˜๋กœ ์„ค์ •๋œ ์ผ๋ถ€ ์ปฌ๋Ÿผ๋“ค์ด ํ™”๋ฉด ์ƒ์— ํ•„์ˆ˜ ํ‘œ์‹œ๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋˜ ๋ฌธ์ œ ์ˆ˜์ •

    • ํŽธ์ง‘๊ธฐ๊ฐ€ ํ”Œ๋กœ์— ์‚ฝ์ž…๋˜์–ด ์žˆ๋Š” ์ƒํƒœ์—์„œ ์ €์žฅ์„ ์ง„ํ–‰ํ•˜๋ฉด ๋กœ๋”ฉ ํ™”๋ฉด์ด ์‚ฌ๋ผ์ง€์ง€ ์•Š๋˜ ํ˜„์ƒ ํ•ด๊ฒฐ

    https://login.salesforce.com/packaging/installPackage.apexp?p0=04tPf000000TeRtIAK
    ์ž…๋ ฅ ๋ž€ ์˜†์˜ ์•„์ด์ฝ˜(
    )์„ ํด๋ฆญํ•˜์—ฌ
    ํ•˜๋ฉด, ์‚ฌ์šฉ์ž์˜ ์–ธ์–ด ์„ค์ •์— ๋”ฐ๋ผ ๋ฒˆ์—ญ๋œ ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ์กฐํšŒ ์„ ํƒ๊ธฐ ํƒ€์ดํ‹€
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํƒ€์ดํ‹€

    ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒ ์„ ํƒ๊ธฐ๋กœ ์ด๋™ํ•˜๋Š” ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”๋„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํƒ€์ดํ‹€๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์šฐ์ธก ์•„์ด์ฝ˜ ๋ฒ„ํŠผ( )์„ ํด๋ฆญํ•˜์—ฌ ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์‚ฝ์ž…ํ•˜๋ฉด, ์‚ฌ์šฉ์ž์˜ ์–ธ์–ด ์„ค์ •์— ๋”ฐ๋ผ ๋ฒˆ์—ญ๋œ ๋ ˆ์ด๋ธ”์„ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด์—์„œ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์ปค์Šคํ…€ ๋ผ๋ฒจ ์ ์šฉํ•˜๊ธฐ

    ์ปค์Šคํ…€ ๋ผ๋ฒจ ์ ์šฉ ์˜ˆ์‹œ๋ฅผ ํ™•์ธํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ, ๋ ˆ์ด๋ธ”์— ์ปค์Šคํ…€ ๋ผ๋ฒจ ์‚ฝ์ž…ํ•˜๊ธฐ ๋ฉ”๋‰ด๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”. ์ด ๋ฉ”๋‰ด์—์„œ๋Š” ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ตฌ์ฒด์ ์ธ ๋ฐฉ๋ฒ•๊ณผ ์˜ˆ์‹œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์‚ฝ์ž…
    ํ™”๋ฉด ๋น„์œจ์„ 80% ์„ค์ •ํ–ˆ์„ ๋•Œ

    ํŽธ์ง‘๊ธฐ์— ํ‘œ์‹œ๋˜๋Š” ์—ด์ด ๋งŽ์€ ๊ฒฝ์šฐ, ํ™”๋ฉด ๋น„์œจ์„ ๋‚ฎ์ถ”๋ฉด ํ•œ ํ™”๋ฉด์—์„œ ๋” ๋งŽ์€ ์—ด์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ™”๋ฉด ๋น„์œจ 80%
    ์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ ๊ธฐ๋ณธ ์„ค์ • ๋ฉ”๋‰ด ํ™”๋ฉด์ž…๋‹ˆ๋‹ค.
    ํ™”๋ฉด ๋น„์œจ 100%

    ๊ฐฑ์‹ ๋จ(IsRenewal__c)์ด true์ผ ๋•Œ ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒ ์„ ํƒ๊ธฐ ํ™”๋ฉด์œผ๋กœ ์ „ํ™˜ํ•˜๋Š” ๋ฒ„ํŠผ์ด ํ‘œ์‹œ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐํšŒ ์ƒ์„ธ ํŽ˜์ด์ง€์—์„œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ด ๊ธฐํšŒ ์ œํ’ˆ์„ ์ €์žฅํ•˜๊ณ , ๊ธฐํšŒ์—์„œ ๊ฒฌ์ ์„ ์ƒ์„ฑํ•œ ๋’ค, ์ˆ˜์ •๋œ ๋‚ด์šฉ์„ ๋‹ค์‹œ ๊ธฐํšŒ์— ๋™๊ธฐํ™”(Sync)ํ•˜๋Š” ๊ณผ์ •์„ ์ง„ํ–‰ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

    ๊ทธ๋Ÿฌ๋‚˜ ์ˆœ์„œ ์ •๋ ฌ(SortOrder) ํ•„๋“œ๊ฐ’์„ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ €์žฅํ•˜์ง€ ์•Š์œผ๋ฉด, ์ œํ’ˆ ์˜ต์…˜์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ๋“ค์ด ์ž˜๋ชป๋œ ์ˆœ์„œ๋กœ ์ •๋ ฌ๋˜์–ด ์‚ฌ์šฉ์ž์—๊ฒŒ ํ˜ผ๋ž€์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ˆœ์„œ ์ •๋ ฌ(SortOrder) ํ•„๋“œ์— ์ž๋™ ๋ฒˆํ˜ธ๋ฅผ ํ• ๋‹นํ•˜์—ฌ, ๋™๊ธฐํ™”(Sync) ์‹œ ์ˆœ์„œ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ •๋ ฌ๋˜๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋” ์„ค์ •

    1. ๋นŒ๋”์—์„œ ๊ฐœ์ฒด ์—ฐ๊ฒฐ ๋‹จ๊ณ„์—์„œ ์ž๋™ ๋ฒˆํ˜ธ ํ•„๋“œ์— ์ˆœ์„œ ์ •๋ ฌ ํ•„๋“œ์˜ API๋ช…(SortOrder)๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

    2. ์ •๋ ฌ ์ˆœ์„œ๋ฅผ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ์ •๋ ฌ ์ˆœ์„œ(SortOrder)๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ๊ฒฐ๊ณผ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด, ์ •๋ ฌ ์ˆœ์„œ(SortOrder) ์ปฌ๋Ÿผ์— ์ž๋™ ๋ฒˆํ˜ธ๊ฐ€ ํ• ๋‹น๋œ ๊ฒƒ์„ ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ์˜ ์ž๋™ ๋ฒˆํ˜ธ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ 100, 200, 300๊ณผ ๊ฐ™์ด 100 ๋‹จ์œ„๋กœ ์ˆœ๋ฒˆ์ด ๋งค๊ฒจ์ง‘๋‹ˆ๋‹ค. ๊ตฌ์„ฑ ์ œํ’ˆ์˜ ์˜ต์…˜ ๋ผ์ธ ์•„์ดํ…œ์€ ์ฃผ ๋ผ์ธ ์•„์ดํ…œ์˜ ๋ฒˆํ˜ธ๋ฅผ ๊ธฐ์ค€์œผ๋กœ 101, 102์™€ ๊ฐ™์ด ํ•˜์œ„ ๋ฒˆํ˜ธ๊ฐ€ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค.

    ์˜ต์…˜ ๋ผ์ธ ์•„์ดํ…œ์˜ ๊ฒฝ์šฐ, ํŽธ์ง‘๊ธฐ์—์„œ๋Š” ์•„๋ž˜ ํ•„๋“œ ์ •๋ณด๋งŒ ๋…ธ์ถœ๋ฉ๋‹ˆ๋‹ค:

    • ์ œํ’ˆ๋ช…

    • ์ •๊ฐ€

    • ๋‹จ๊ฐ€

    • ์ˆ˜๋Ÿ‰

    • ์ด์•ก

    • ํ• ์ธ์œจ/ํ• ์ธ์•ก

    ๊ธฐํšŒ ์ œํ’ˆ ์ถ”๊ฐ€ ์‹œ, ์„ ํƒํ•œ ์ œํ’ˆ์˜ ๋‹จ๊ฐ€๋ฅผ ๊ธฐํšŒ ์ œํ’ˆ์˜ ๋‹จ๊ฐ€ ํ•„๋“œ์— ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ• ๋‹นํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ์— ์ •๊ฐ€(ListPrice)์™€ ํŒ๋งค ๊ฐ€๊ฒฉ(UnitPrice) ํ•„๋“œ๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ํ•„๋“œ์— ์กฐํšŒ ๊ฐœ์ฒด์ธ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)์˜ ์ •๊ฐ€(UnitPrice) ํ•„๋“œ ๊ฐ’์„ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    ์„ค์ • ๋ฐฉ๋ฒ•

    1. ์ •๊ฐ€์™€ ํŒ๋งค ๊ฐ€๊ฒฉ์˜ ์†Œ์Šค ํ•„๋“œ์—์„œ ์ฒซ ๋ฒˆ์งธ ์˜ต์…˜์„ โ€˜์กฐํšŒโ€™๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    2. ๋‘ ๋ฒˆ์งธ ์˜ต์…˜์—์„œ โ€˜์ •๊ฐ€โ€™๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ๊ฒฐ๊ณผ

    ์„ ํƒํ•œ ์ œํ’ˆ๋“ค์˜ ๋‹จ๊ฐ€๊ฐ€ ๋ผ์ธ ์•„์ดํ…œ์˜ ์ •๊ฐ€์™€ ํŒ๋งค ๊ฐ€๊ฒฉ ํ•„๋“œ์— ๊ฐ’์œผ๋กœ ํ• ๋‹น๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์กฐํšŒ ์„ ํƒ๊ธฐ
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ
    ์˜ˆ์‹œ: ์Šน์ธ๋œ ์ƒํƒœ์˜ ๊ธฐํšŒ ์ œํ’ˆ ์‚ญ์ œ ๋ถˆ๊ฐ€ ์„ค์ •

    ๊ธฐํšŒ์˜ ๋ผ์ธ ์•„์ดํ…œ์ธ ๊ธฐํšŒ ์ œํ’ˆ์ด ์Šน์ธ๋œ ๊ฒฝ์šฐ, ์‚ญ์ œ๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜๋„๋ก ์„ค์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ์Šน์ธ๋จ(Approved__c) ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‚ญ์ œ ์ œ์–ด๋ฅผ ๊ตฌ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    ๋นŒ๋” ์„ค์ •

    ์‚ญ์ œ ์ œ์–ด ํ•„๋“œ์— ์Šน์ธ๋จ(Approved__c) ํ•„๋“œ API๋ช…์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

    ๊ฒฐ๊ณผ

    ์Šน์ธ๋จ(Approved__c) ํ•„๋“œ๊ฐ’์ด true์ธ ๊ฒฝ์šฐ์—๋งŒ ์‚ญ์ œ ๋ฒ„ํŠผ์ด ๋…ธ์ถœ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Opportunity
    ), ๊ฒฌ์ (
    Quote
    ), ์ฃผ๋ฌธ(
    Order
    )์— ํ•œ์ •
    ํ•˜์—ฌ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

    ๋ชจ๋ฐ”์ผ ํ™”๋ฉด์—์„œ๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ์ผ๋ถ€ ๊ธฐ๋Šฅ์ด ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค:

    • ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ํ•„ํ„ฐํ•˜๋Š” ๊ธฐ๋Šฅ

    • ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ

    • ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ๋‹ค์ค‘ ์‚ญ์ œ ๊ธฐ๋Šฅ

    ๋ฐ์Šคํฌํ†ฑ ํ™”๋ฉด

    ์กฐํšŒ ์„ ํƒ๊ธฐ
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ

    ๋ชจ๋ฐ”์ผ ํ™”๋ฉด

    ์กฐํšŒ ์„ ํƒ๊ธฐ
    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ

    ๋ฐ˜์‘ํ˜•

    ๋””๋ฐ”์ด์Šค ํ™˜๊ฒฝ์— ๋งž์ถฐ ์ž๋™์œผ๋กœ ์ตœ์ ํ™”๋œ ํ™”๋ฉด์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ๋ฐ์Šคํฌํ†ฑ

    ๋””๋ฐ”์ด์Šค์— ์ƒ๊ด€์—†์ด ๋ฐ์Šคํฌํ†ฑ ๋ชจ๋“œ์˜ ํ™”๋ฉด์œผ๋กœ ๊ณ ์ •๋ฉ๋‹ˆ๋‹ค.

    ๋ชจ๋ฐ”์ผ

    ๋””๋ฐ”์ด์Šค์— ์ƒ๊ด€์—†์ด ๋ชจ๋ฐ”์ผ ๋ชจ๋“œ์˜ ํ™”๋ฉด์œผ๋กœ ๊ณ ์ •๋ฉ๋‹ˆ๋‹ค.

    ์„ค์ • ๋ฐฉ๋ฒ•

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ [์—ด ์ถ”๊ฐ€] ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์— ์ž‘์—…ํ•  ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ์—ด ์ถ”๊ฐ€ ์˜ˆ์‹œ

    ๊ฒฌ์ 

  • ์ฃผ๋ฌธ

  • ๋นŒ๋”์˜ ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด ์„ค์ • ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š” >

    ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •ํ•˜๊ธฐ

    ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋จผ์ € ๋นŒ๋”์—์„œ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•˜๊ณ , ํ•„์š”ํ•œ ์„ค์ •๊ณผ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ ์ฐธ์กฐ ๋ฌธ์„œ์˜ ์…‹์—… ์ ˆ์ฐจ๋ฅผ ๋”ฐ๋ผ ์„ค์ •์„ ์ง„ํ–‰ํ•˜์„ธ์š”.

    ์ œํ’ˆ ์˜ต์…˜ ์…‹์—… ์ ˆ์ฐจ >

    ๋ผ์ธ ์•„์ดํ…œ ์˜ต์…˜ ๊ฐ’์˜ ํ‘œ์‹œ ๋ฐ ์ €์žฅ ๋ฐฉ์‹

    ์˜ต์…˜์ด ๋ผ์ธ ์•„์ดํ…œ์— ์–ด๋–ป๊ฒŒ ํ‘œ์‹œ๋˜๊ณ  ์ €์žฅ๋˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

    ํ‘œ์‹œ ๋ฐ ์ €์žฅ ๋ฐฉ์‹ ํ™•์ธํ•˜๊ธฐ >

    ๋Œ€์ƒ ๋ ˆ์ฝ”๋“œ ์„ ํƒ

    ๋ฏธ๋ฆฌ ๋ณด๊ณ  ์‹ถ์€ ๋Œ€์ƒ ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์„ ํƒํ•  ๋ ˆ์ฝ”๋“œ๋Š” ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.

    ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์˜ˆ์‹œ

    1

    ์žฅ์น˜

    ์žฅ์น˜์— ๋”ฐ๋ผ ํŽธ์ง‘๊ธฐ๋ฅผ ๋ฏธ๋ฆฌ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2

    ๊ธฐ๋ณธ ํ™”๋ฉด ๋กœ๋“œ ์‹œ

    ๋ผ์ธ ์•„์ดํ…œ ์ €์žฅ ์‹œ

    ์˜ˆ์‹œ: ์ˆ˜๋Ÿ‰์˜ ๊ธฐ๋ณธ๊ฐ’์„ 1๋กœ ์„ค์ •ํ•˜๊ธฐ

    ๋นŒ๋”์—์„œ ์ˆ˜๋Ÿ‰ ํ•„๋“œ(์—ด)์˜ ๊ธฐ๋ณธ๊ฐ’์„ 1๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ์ถ”๊ฐ€ ์‹œ, ์ˆ˜๋Ÿ‰์ด ์ž๋™์œผ๋กœ 1๋กœ ํ• ๋‹น๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • (Setup Line Item Editor)

    ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์˜ ์†์„ฑ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์•ž์„œ ์„ ํƒ ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ณ„๋กœ ๊ฐ€๊ฒฉ, ํ• ์ธ์œจ, ์ˆ˜๋Ÿ‰ ๋“ฑ์˜ ์†์„ฑ ํ•„๋“œ๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

    1

    Line-item ๊ฐœ์ฒด์˜ ๋ชจ๋“  ํ•„๋“œ ์ค‘์—์„œ ํŽธ์ง‘ ์‹œ ์‚ฌ์šฉํ•  ํ•„๋“œ๋ฅผ ์„ ํƒํ•˜๊ณ  ๊ฐ ํ•„๋“œ์˜ ๊ธฐ๋ณธ๊ฐ’ ๋ฐ ์†์„ฑ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    2

    ์กฐํšŒ ๊ฐœ์ฒด ๋ ˆ์ฝ”๋“œ ์™ธ์— ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ๊ฐœ์ฒด๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋˜ํ•œ, Apex Class๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณต์žกํ•œ ๋กœ์ง์ด๋‚˜ ์™ธ๋ถ€ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€ ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ํ‘œ์‹œํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜ ์…‹์—… ์ ˆ์ฐจ

    ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์…‹์—… ์ ˆ์ฐจ๋ฅผ ์ง„ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค:

    1

    ์ œํ’ˆ ์˜ต์…˜ ํ™œ์„ฑํ™”

    ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ๋นŒ๋”์—์„œ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ์Šคํƒ ๋‹ค๋“œ ์„ค์ •(๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ)์—์„œ๋งŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

    2

    ๋นŒ๋”์—์„œ ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ•„์š”ํ•œ ์„ค์ •์„ ์™„๋ฃŒํ•ด์•ผ ์ œ๋Œ€๋กœ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ์ œํ’ˆ ์˜ต์…˜์˜ ์ •๋ณด๋ฅผ ์–ด๋–ค ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์— ์ €์žฅํ• ์ง€, ์–ด๋–ค ๊ธฐ์ค€์œผ๋กœ ์ œํ’ˆ ์˜ต์…˜์„ ์กฐํšŒํ• ์ง€์™€ ๊ฐ™์€ ํ•„ํ„ฐ ์„ค์ • ๋“ฑ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

    3

    ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •์ด ์™„๋ฃŒ๋˜๋ฉด, ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒํ•  ์ œํ’ˆ ์˜ต์…˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด SmallBuilder Line Items์—์„œ ์ œ๊ณตํ•˜๋Š” ์ œํ’ˆ ๊ตฌ์„ฑ(SBLI__ProductFeature__c) ๋ฐ ์ œํ’ˆ ์˜ต์…˜(SBLI__ProductOption__c) ๊ฐœ์ฒด์— ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    ๊ฐœ์ฒด ์—ฐ๊ฒฐ (Relate Objects)

    ๋นŒ๋”์—์„œ ์„ค์ •ํ•ด์•ผ ํ•˜๋Š” ๊ฐ€์žฅ ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์‚ฌ์šฉํ•  ๊ฐœ์ฒด๋“ค์˜ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ด€๊ณ„๋Š” ๋ฐ˜๋“œ์‹œ Junction ๊ด€๊ณ„ ๊ตฌ์กฐ๋ฅผ ๋”ฐ๋ผ์•ผ ํ•˜๋ฉฐ, ๋ถ€๋ชจ(Parent), ๋ผ์ธ ์•„์ดํ…œ(Line Item), ์กฐํšŒ(Lookup) ๊ฐœ์ฒด๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์„ค์ • ๋‹จ๊ณ„

    1

    ๋ถ€๋ชจ ๊ฐœ์ฒด

    ๋ถ€๋ชจ ๊ฐœ์ฒด๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์˜ ์ƒ์œ„ ๊ฐœ์ฒด๋กœ, Master-Detail ๋˜๋Š” Lookup ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ ํŽ˜์ด์ง€์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    2

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด๋Š” ์ฐธ์กฐ ๋ฐ์ดํ„ฐ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ์ €์žฅํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ๊ฐœ์ฒด์ž…๋‹ˆ๋‹ค.

    3

    ์กฐํšŒ ๊ฐœ์ฒด

    ์กฐํšŒ ๊ฐœ์ฒด๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์—์„œ ์ฐธ์กฐํ•˜๋Š” ๊ฐœ์ฒด๋กœ, ์‚ฌ์šฉ์ž๋Š” ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๊ธฐํšŒ ์ œํ’ˆ ํŽธ์ง‘ ํ™”๋ฉด ์žฌ๊ตฌ์„ฑํ•˜๊ธฐ

    ๊ธฐํšŒ(Opportunity)๋ฅผ ๊ธฐ์ค€์œผ๋กœ ์—ฌ๋Ÿฌ ์ œํ’ˆ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์ด๋ผ๋Š” ๊ฐœ์ฒด๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐํšŒ ์ œํ’ˆ์€ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)์„ ์ฐธ์กฐํ•˜์—ฌ ์ œํ’ˆ ๋ฐ ๊ฐ€๊ฒฉ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์Šคํƒ ๋‹ค๋“œ ๊ธฐํšŒ ์ œํ’ˆ ๋“ฑ๋ก ํ™”๋ฉด์„ SmallBuilder Line Items๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์žฌ๊ตฌ์„ฑํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ ๊ฐœ์ฒด: ๊ธฐํšŒ

      ์—ฌ๋Ÿฌ ์ œํ’ˆ์„ ์—ฐ๊ฒฐํ•˜๋Š” ์ƒ์œ„ ๊ฐœ์ฒด๋กœ, ๊ธฐํšŒ ์ œํ’ˆ๊ณผ Master-Detail ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

    • ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด: ๊ธฐํšŒ ์ œํ’ˆ

      ํŒ๋งค ๊ฐ€๊ฒฉ, ์ˆ˜๋Ÿ‰, ์ด ๊ธˆ์•ก ๋“ฑ ์ œํ’ˆ ๊ด€๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋ฉฐ, ๊ธฐํšŒ์™€ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

    • ์กฐํšŒ ๊ฐœ์ฒด: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด (Line Item Object)

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด๋Š” ์ฐธ์กฐ ๋ฐ์ดํ„ฐ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ์ €์žฅํ•˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ๊ฐœ์ฒด์ž…๋‹ˆ๋‹ค. ์ด ๊ฐœ์ฒด๋Š” ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•˜์œ„ ๊ฐœ์ฒด์—ฌ์•ผ ํ•˜๋ฉฐ, ๋นŒ๋”์—์„œ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ์„ ํƒํ•˜๋ฉด ํ•ด๋‹น ๋ถ€๋ชจ ๊ฐœ์ฒด์™€ ์—ฐ๊ด€๋œ ํ•˜์œ„ ๊ฐœ์ฒด๋ฅผ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋‹จ๊ณ„์—์„œ๋Š” ํ•„ํ„ฐ, ์ •๋ ฌ, ์ž๋™ ๋ฒˆํ˜ธ ๋“ฑ์˜ ์„ค์ •๋“ค์„ ์ œ๊ณตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    1

    ๋ผ์ธ ์•„์ดํ…œ์œผ๋กœ ์‚ฌ์šฉ๋  ๊ฐœ์ฒด๋ฅผ ์„ ํƒํ•˜๊ณ , ํ•ด๋‹น ๊ฐœ์ฒด๋ฅผ ๋ถ€๋ชจ ๊ฐœ์ฒด์™€ ์—ฐ๊ฒฐํ•  ํ•„๋“œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์Šคํƒ ๋‹ค๋“œ ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ, ์ž๋™ ์„ค์ • ์˜ต์…˜์„ ํ†ตํ•ด ํ•„์š”ํ•œ ์„ค์ •์„ ๊ฐ„ํŽธํ•˜๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์‹คํ–‰ ์‹œ ์กฐ๊ฑด์— ๋งž๋Š” ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ์„ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์‹ถ๋‹ค๋ฉด, ํ•„ํ„ฐ์™€ ์ •๋ ฌ ์ˆœ์„œ๋ฅผ ์„ค์ •ํ•ด๋ณด์„ธ์š”. ์ด๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ํ‘œ์‹œํ•˜๊ณ , ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ˆœ์„œ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    3

    ๋ผ์ธ ์•„์ดํ…œ์„ ์‚ญ์ œํ•  ๋•Œ ํŠน์ • ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ œ์–ดํ•˜๋ ค๋ฉด, ์กฐ๊ฑด์˜ ๊ฒฐ๊ณผ๊ฐ’(true ๋˜๋Š” false)์„ ์ €์žฅํ•˜๋Š” ํ•„๋“œ๋ฅผ ์ง€์ •ํ•˜์„ธ์š”. ์ด ํ•„๋“œ๋Š” ์‚ญ์ œ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

    4

    ๋ผ์ธ ์•„์ดํ…œ ์ €์žฅ ์‹œ ์ž๋™ ๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ํŠนํžˆ ์ œํ’ˆ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ๊ฐ ๋ผ์ธ ์•„์ดํ…œ์„ ๊ตฌ๋ถ„ํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๊ธฐ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •ํ•˜๊ธฐ

    ์ œํ’ˆ ์˜ต์…˜์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด ๋นŒ๋” ์ƒ๋‹จ์— โ€˜์ œํ’ˆ ์˜ต์…˜ ์„ค์ •โ€™ ๋‹จ๊ณ„๊ฐ€ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋‹จ๊ณ„์—์„œ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์„ค์ •์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •

    ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •์€ ํฌ๊ฒŒ ๊ธฐ๋ณธ ์„ค์ •๊ณผ ๋ผ์ธ ์•„์ดํ…œ ์„ค์ •์œผ๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค.

    ๋ฒ„ํŠผ ์ƒ์„ฑ ๋ฐ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ์ถ”๊ฐ€ํ•˜๊ธฐ

    ๋นŒ๋”๊ฐ€ ํ™œ์„ฑํ™”๋˜๋ฉด, ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•  ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•˜์—ฌ ๋ถ€๋ชจ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ๋ฒ„ํŠผ ์ƒ์„ฑ ๋ฐ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ํ• ๋‹น

    1

    ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”

    ํŽธ์ง‘๊ธฐ ๋ฒ„ํŠผ์˜ ๋ ˆ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

    ๋ฒ„ํŠผ์˜ Aura Component

    ๋นŒ๋”์—์„œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•˜๋ฉด, ์•„๋ž˜์™€ ๊ฐ™์€ Aura Component๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋ฒ„ํŠผ์— ์—ฐ๊ฒฐ๋œ ํŽธ์ง‘๊ธฐ๋ฅผ ๋‹ค์–‘ํ•˜๊ฒŒ ํ™œ์šฉํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ๋ฒ„ํŠผ์ด ํ˜ธ์ถœํ•˜๋Š” Aura Component๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

    ํ˜„์žฌ ์กฐ์ง์˜ ๋ฆฌ์ŠคํŠธ ๊ตฌ์„ฑ๊ธฐ ์„ค์ •์„ JSON ํŒŒ์ผ๋กœ ๋‚ด๋ณด๋‚ด๊ฑฐ๋‚˜, ๋‹ค๋ฅธ ์กฐ์ง์—์„œ ์ƒ์„ฑํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ • JSON ํŒŒ์ผ์„ ๊ฐ€์ ธ์™€ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ •์„ ์†์‰ฝ๊ฒŒ ๋‹ค๋ฅธ ์กฐ์ง์œผ๋กœ ์ด์ „ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ๋‚ด ํƒญ ์ƒ์„ฑ ์ •๋ณด๋Š” ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.


    ๐Ÿ”ธ ํ™”๋ฉด ๊ตฌ์„ฑ

    ๋ฒˆํ˜ธ
    ํ•„๋“œ๋ช… ๋ฐ ์˜์—ญ
    ์„ค๋ช…
    ํ•„์ˆ˜

    ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ(Query Wizard)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•„ํ„ฐ ์‚ฝ์ž…ํ•˜๊ธฐ

    ๋นŒ๋”์—์„œ ํ•„ํ„ฐ ์„ค์ •์€ ๋ณดํ†ต SOQL์˜ WHERE ์ ˆ์— ํ•ด๋‹นํ•˜๋Š” ๊ตฌ๋ฌธ์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ SOQL์„ ์ž˜ ๋ชจ๋ฅด๋Š” ๊ด€๋ฆฌ์ž๋ผ๋ฉด ์ด ๊ณผ์ •์„ ์–ด๋ ต๊ฒŒ ๋А๋‚„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ด€๋ฆฌ์ž๊ฐ€ SOQL ๋ฌธ๋ฒ•์— ๋Œ€ํ•œ ๊นŠ์€ ์ง€์‹ ์—†์ด๋„ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•„ํ„ฐ ์กฐ๊ฑด์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์กฐ๊ฑด์„ ์„ ํƒํ•˜๊ณ  ๊ฐ’์„ ์ž…๋ ฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด ํ•„ํ„ฐ ์ž‘์„ฑ์ด ํ›จ์”ฌ ์‰ฌ์›Œ์ง‘๋‹ˆ๋‹ค.

    ๋กœ์ง ์„ค์ •ํ•˜๊ธฐ

    ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ์—์„œ ์—ฌ๋Ÿฌ ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•˜๋ฉด ๊ธฐ๋ณธ์ ์œผ๋กœ ์กฐ๊ฑด์ด โ€˜ANDโ€™๋กœ ๋ฌถ์—ฌ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ์—์„œ 3๊ฐœ์˜ ํ•„ํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜์˜€์„ ๋•Œ:

    ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ์—์„œ ์„ค์ •ํ•œ 1~3๋ฒˆ ํ•„ํ„ฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ชจ๋‘ โ€˜ANDโ€™๋กœ ๋ฌถ์—ฌ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

    ๋กœ์ง ๋ณ€๊ฒฝํ•˜๊ธฐ

    ๋กœ์ง์„ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด ๋กœ์ง ํŽธ์ง‘์„ ๋ˆŒ๋Ÿฌ ํ•„ํ„ฐ ๋ฒˆํ˜ธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋กœ์ง์„ ์ˆ˜์ •ํ•˜์„ธ์š”.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ชจ๋“  ์กฐ๊ฑด์„ OR๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค:

    ์ˆ˜์ •ํ•œ ๋กœ์ง๋Œ€๋กœ ํ•„ํ„ฐ๊ฐ€ ์ƒ์„ฑ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ•„ํ„ฐ ์„ค์ • ์‹œ ๋ถ€๋ชจ ๊ฐœ์ฒด ํ•„๋“œ์™€ ๋ฐ”์ธ๋”ฉํ•˜๊ธฐ

    ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•  ๋•Œ, ์กฐ๊ฑด๊ฐ’์„ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’๊ณผ ๋ฐ”์ธ๋”ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ’ ์ž…๋ ฅ๋ž€ ์•ž์— ์žˆ๋Š” ์˜ต์…˜์—์„œ ๋ถ€๋ชจ๋ฅผ ์„ ํƒํ•˜๋ฉด, ํ•ด๋‹น ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•„๋“œ๋ฅผ ์„ ํƒํ•˜์—ฌ ํ•„ํ„ฐ ์กฐ๊ฑด์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋™์ ์ธ ํ•„๋“œ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด ๋”์šฑ ์œ ์—ฐํ•œ ๋ฐ์ดํ„ฐ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๊ธฐํšŒ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ์กฐํšŒํ•˜๊ธฐ

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)์ด ๋ถ€๋ชจ ๊ฐœ์ฒด์ธ ๊ธฐํšŒ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋„๋ก ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    1. ๊ฐœ์ฒด ์—ฐ๊ฒฐ ๋‹จ๊ณ„์—์„œ ์กฐํšŒ ๊ฐœ์ฒด์˜ ํ•„ํ„ฐ ์„ค์ •(Filter by Query)์—์„œ ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    1. ๊ฐ’ ์ž…๋ ฅ๋ž€ ์˜†์˜ ์˜ต์…˜์—์„œ ๋ถ€๋ชจ(Parent)๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    1. ์ž…๋ ฅ๋ž€์— ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ID๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    1. ํ•„ํ„ฐ ์กฐ๊ฑด์ด {$Parent.Pricebook2Id}๋กœ ์ž๋™ ๋ฐ”์ธ๋”ฉ๋˜์–ด ์ถ”๊ฐ€๋œ ๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    ์ด ์„ค์ •์„ ํ†ตํ•ด ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก๊ณผ ์ผ์น˜ํ•˜๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ๋ฐ์ดํ„ฐ๋ฅผ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•„ํ„ฐ ๊ตฌ๋ฌธ์ด ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜์–ด, ์กฐ๊ฑด์„ ์‰ฝ๊ณ  ํŽธ๋ฆฌํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ ์„ค์ •

    ์ œํ’ˆ ์ถ”๊ฐ€ ์‹œ ์˜ต์…˜ ์„ ํƒ ๊ฑด๋„ˆ๋›ฐ๊ธฐ, ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜ ํ•„ํ„ฐํ•˜๊ธฐ ๋“ฑ ๊ธฐ๋ณธ์ ์ธ ์„ค์ •์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ๋กœ๋“œํ•˜๋ฉด, ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ตฌ์„ฑ ์ œํ’ˆ์— ์ถ”๊ฐ€๋œ ์˜ต์…˜๋“ค์ด ๋ชจ๋‘ ํ‘œ์‹œ๋˜๋„๋ก ์˜ต์…˜ ๋ผ์ธ ์•„์ดํ…œ ๋ชฉ๋ก์ด ํ™•์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋งŒ์•ฝ ํŽธ์ง‘๊ธฐ ๋กœ๋“œ ์‹œ ์˜ต์…˜ ๋ชฉ๋ก์„ ์ˆจ๊ธฐ๊ณ  ์‹ถ๋‹ค๋ฉด, โ€˜๊ธฐ๋ณธ ํŽผ์น˜๊ธฐโ€™ ์„ค์ •์„ ๋น„ํ™œ์„ฑํ™”ํ•˜์„ธ์š”.

    ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ๊ฐ€ ํ™œ์„ฑํ™” ๋œ ๊ฒฝ์šฐ

    ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ๊ฐ€ ๋น„ํ™œ์„ฑํ™” ๋œ ๊ฒฝ์šฐ

    ๊ธฐ๋ณธ ํŽผ์น˜๊ธฐ๊ฐ€ ๋น„ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ, ์˜ต์…˜ ๋ชฉ๋ก์ด ์ˆจ๊ฒจ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์žฅ ์•„์ด์ฝ˜()์ด ์žˆ๋Š” ๋ผ์ธ ์•„์ดํ…œ ํ–‰์„ ํด๋ฆญํ•˜๋ฉด ์˜ต์…˜ ๋ชฉ๋ก์„ ํŽผ์ณ์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ต์…˜ ์„ ํƒ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

    ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œํ’ˆ ์˜ต์…˜์ด ํ™œ์„ฑํ™”๋˜๋ฉด, ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ์ œํ’ˆ์„ ์„ ํƒํ•œ ํ›„ ๋‹ค์Œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

    ํ•˜์ง€๋งŒ, ์ œํ’ˆ์„ ์ถ”๊ฐ€ํ•  ๋•Œ๋งˆ๋‹ค ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„๊ฐ€ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒƒ์ด ๋ฒˆ๊ฑฐ๋กญ๊ฑฐ๋‚˜ ๋ถˆํ•„์š”ํ•˜๋‹ค๊ณ  ๋А๋‚„ ๊ฒฝ์šฐ, โ€˜์˜ต์…˜ ์„ ํƒ ๊ฑด๋„ˆ๋›ฐ๊ธฐโ€™ ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•˜์—ฌ ํ•ด๋‹น ๋‹จ๊ณ„๋ฅผ ๊ฑด๋„ˆ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„๋ฅผ ๊ฑด๋„ˆ๋›ฐ์–ด๋„, ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์˜ต์…˜์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ต์…˜ ์„ ํƒ์„ ๊ฑด๋„ˆ๋›ฐ๋Š” ๊ฒฝ์šฐ

    ์˜ต์…˜ ์„ ํƒ์„ ๊ฑด๋„ˆ๋›ฐ๋Š” ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด, ์•„๋ž˜ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ์ œํ’ˆ ์„ ํƒ ํ›„ ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„๊ฐ€ ์ƒ๋žต๋ฉ๋‹ˆ๋‹ค. ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„๋ฅผ ์Šคํ‚ตํ•˜๋”๋ผ๋„ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์˜ต์…˜์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ต์…˜ ํ•„ํ„ฐ

    ์˜ต์…˜์€ ์„ ํƒํ•œ ์ œํ’ˆ๊ณผ ๋ถ€๋ชจ(๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ)์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค.

    ์ถ”๊ฐ€์ ์œผ๋กœ ์˜ต์…˜ ์กฐํšŒ ์กฐ๊ฑด์„ ์„ค์ •ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ, ์˜ต์…˜ ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•˜์„ธ์š”. ํ•„ํ„ฐ ์ž‘์„ฑ ๋ฐฉ์‹์€ SOQL์˜ WHERE ์ ˆ๊ณผ ๋™์ผํ•˜๋ฉฐ, ํ•„ํ„ฐ ๊ธฐ์ค€์ด ๋˜๋Š” ๊ฐœ์ฒด๋Š” ์ œํ’ˆ ์˜ต์…˜(SBLI__ProductOption__c)์ž…๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ

    ๋˜ํ•œ, ์ง์ ‘ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ  ๋ฅผ ์ด์šฉํ•ด ํ•„ํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ์˜ Aura Component ํ™œ์šฉํ•˜๊ธฐ

    Component ์ง์ ‘ ์ƒ์„ฑ

    ๋ฒ„ํŠผ ์™ธ์˜ ๋‹ค๋ฅธ ์œ„์น˜์—์„œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ํ˜ธ์ถœํ•˜๋ ค๋ฉด, Aura Component์ธ <SBLI:LineItemConfigurator />๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    ํ˜„์žฌ๋Š” Aura Component๋งŒ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋”์—์„œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•˜๋ฉด, ์•„๋ž˜์™€ ๊ฐ™์€ Aura Component๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋ฒ„ํŠผ์— ์—ฐ๊ฒฐ๋œ ํŽธ์ง‘๊ธฐ๋ฅผ ๋” ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, ๋ฒ„ํŠผ์ด ํ˜ธ์ถœํ•˜๊ณ  ์žˆ๋Š” Aura Component๋ฅผ ์ˆ˜์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    Aura Component ์†์„ฑ

    ์†์„ฑ
    ์„ค๋ช…
    ํ•„์ˆ˜

    ๋นŒ๋” ๋ณต์ œ

    ๋ณต์ œ ๋ชฉ์ 

    ๋ณต์ œ ๊ธฐ๋Šฅ์€ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค:

    1. ์•ˆ์ „ํ•œ ์ˆ˜์ • ๋ฐ ํ…Œ์ŠคํŠธ

    ๋ฒ„์ „ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ํ˜„์žฌ ์„ค์ •์„ ๋ณต์ œํ•˜์—ฌ ์•ˆ์ „ํ•˜๊ฒŒ ์ˆ˜์ •ํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์›๋ž˜ ์„ค์ •์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๊ณ  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์‹œ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2. ๋น„์Šทํ•œ ํŽธ์ง‘๊ธฐ ๋น ๋ฅด๊ฒŒ ๊ตฌํ˜„

    ๋น„์Šทํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์ถ”๊ฐ€๋กœ ๊ตฌํ˜„ํ•  ํ•„์š”๊ฐ€ ์žˆ์„ ๋•Œ, ๋ณต์ œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉด ์ƒˆ ํŽธ์ง‘๊ธฐ๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ์ƒ์„ฑํ•˜๊ณ  ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ณต์ œํ•˜๊ธฐ

    1. ๋นŒ๋” ์ƒ๋‹จ์— ์žˆ๋Š” ๋ณต์ œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    2. ๋ณต์ œ๋œ ๋นŒ๋” ํ™”๋ฉด์—์„œ ํ•„์š”ํ•œ ์ถ”๊ฐ€ ์„ค์ • ๋ฐ ๋ณ€๊ฒฝ์„ ํ•ฉ๋‹ˆ๋‹ค.

    3. ์ €์žฅ์„ ๋ˆŒ๋Ÿฌ ๋ณต์ œ ์ž‘์—…์„ ์™„๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

    ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์— ํ‘œ์‹œ๋˜๋Š” ์—ด ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ ํƒ๋œ ํ•„๋“œ์˜ ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋˜๋ฉฐ, ๋ ˆ์ด๋ธ” ์ž…๋ ฅ๋ž€์— ๊ฐ’์„ ์ž…๋ ฅํ•˜๋ฉด ํ•ด๋‹น ๊ฐ’์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ž…๋ ฅ๋ž€ ์˜†์˜ ์•„์ด์ฝ˜( )์„ ํด๋ฆญํ•˜์—ฌ ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์‚ฝ์ž…ํ•˜๋ฉด ์‚ฌ์šฉ์ž ์–ธ์–ด ์„ค์ •์— ๋”ฐ๋ผ ๋ฒˆ์—ญ๋œ ๋ ˆ์ด๋ธ”์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ๋ ˆ์ด๋ธ”์„ ๋ณ„๋„๋กœ ์„ค์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ๊ธฐ๋ณธ์ ์œผ๋กœ ํ‘œ์‹œ๋˜๋Š” ํ•„๋“œ ๋ ˆ์ด๋ธ”์€ ์‚ฌ์šฉ์ž ์–ธ์–ด์— ๋”ฐ๋ผ ๋ฒˆ์—ญ๋ฉ๋‹ˆ๋‹ค.

    JSON ๋‚ด๋ณด๋‚ด๊ธฐ

    JSON ๋‚ด๋ณด๋‚ด๊ธฐ๋Š” ๋ฆฌ์ŠคํŠธ ๊ตฌ์„ฑ๊ธฐ์— ์ •์˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ตฌ์กฐํ™”๋œ JSON ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ, ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฅผ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ์™ธ๋ถ€ ์‹œ์Šคํ…œ์— ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๊ตฌ์„ฑ๋œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋‚˜ ์„ค์ • ์ •๋ณด๋ฅผ ๋‹ค๋ฅธ ํ™˜๊ฒฝ์œผ๋กœ ์†์‰ฝ๊ฒŒ ์ด์ „ํ•˜๊ฑฐ๋‚˜, ๋ฐฑ์—… ๋ฐ ๊ณต์œ  ๋ชฉ์ ์œผ๋กœ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


    ๐Ÿ”ธ ๋‚ด๋ณด๋‚ด๊ธฐ

    1. ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ํƒญ์—์„œ Export JSON ์‹œ์ž‘ํ•˜๊ธฐ(Start Json Export) ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    Migration App

    2. ๋นŒ๋”๋ฅผ ์„ ํƒํ•˜๊ณ  Export ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    ๋นŒ๋” ์„ ํƒ

    3. JSON์œผ๋กœ ๋ณ€ํ™˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•์ธํ•˜๊ณ  ์ด์ƒ์ด ์—†์œผ๋ฉด Download ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ Json ํŒŒ์ผ์„ ๋‚ด๋ ค๋ฐ›์Šต๋‹ˆ๋‹ค.

    ๊ณ ๊ธ‰ ์‚ฌ์šฉ ์˜ˆ์ œ

    ์‹ค๋ฌด์—์„œ ๋งŽ์ด ์ ‘ํ•˜๋Š” ๊ณ ๊ธ‰ ์‚ฌ์šฉ์ž ์š”๊ตฌ์‚ฌํ•ญ์„ ๊ตฌํ˜„ํ•œ ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

    ์˜ˆ์ œ๋Š” AppExchage์—์„œ Test Drive๋ฅผ ํ†ตํ•ด ์ง์ ‘ ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Data Source๋ฅผ ํ™œ์šฉํ•œ Promotion ๊ฐ€๊ฒฉ ์ ์šฉ ์˜ˆ์‹œ

    Data Source๋ฅผ ํ™œ์šฉํ•œ ์™ธ๋ถ€ ์‹œ์Šคํ…œ ์—ฐ๋™ ์˜ˆ์‹œ

    ์„ค์ • ๋ฐฉ๋ฒ•

    ๋ถ€๋ชจ ๊ฐœ์ฒด์— ๋”ฐ๋ผ ์„ค์ • ๋ฐฉ๋ฒ• ์ œ๊ณต

    ๋นŒ๋”๋Š” ์Šคํƒ ๋‹ค๋“œ ๊ธฐํšŒ(Opportunity), ๊ฒฌ์ (Quote), ์ฃผ๋ฌธ(Order)์— ํ•œํ•ด ์ž๋™ ์„ค์ •์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ๊ธฐํšŒ, ๊ฒฌ์ , ์ฃผ๋ฌธ ์ค‘ ํ•˜๋‚˜๋กœ ์ง€์ •ํ•  ๊ฒฝ์šฐ, ์•„๋ž˜ ๋‘ ๊ฐ€์ง€ ์„ค์ • ๋ฐฉ๋ฒ• ์ค‘ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

    ๋ ˆ์ด๋ธ”์— ์ปค์Šคํ…€ ๋ผ๋ฒจ ์‚ฝ์ž…ํ•˜๊ธฐ

    ์ปค์Šคํ…€ ๋ผ๋ฒจ ์ ์šฉ์ด ๊ฐ€๋Šฅํ•œ ๊ณณ์—๋Š” ์•„์ด์ฝ˜์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜๋ฉด ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋‹ฌ ์ฐฝ์ด ๋‚˜ํƒ€๋‚˜๋ฉฐ, ์›ํ•˜๋Š” ๋ผ๋ฒจ์„ ์„ ํƒํ•˜์—ฌ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ปค์Šคํ…€ ๋ผ๋ฒจ์„ ์ ์šฉํ•  ๋•Œ, ๋Œ€์ƒ ๊ฐ’์ด ์ตœ๋Œ€ ๊ธธ์ด๋ฅผ ์ดˆ๊ณผํ•˜๋ฉด ์ปค์Šคํ…€ ๋ผ๋ฒจ ๋ฐ”์ธ๋”ฉ์ด ์ž˜๋ ค์„œ ์ œ๋Œ€๋กœ ์ ์šฉ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ผ๋ฒจ ์ ์šฉ ์‹œ ์ตœ๋Œ€ ๊ธธ์ด ์ œํ•œ์„ ๊ณ ๋ คํ•˜์—ฌ ์„ค์ •ํ•˜์„ธ์š”.

    ํ•„ํ„ฐ ์„ค์ • ๋„๊ตฌ

    ํ•„ํ„ฐ ์„ค์ • ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ•„ํ„ฐ๋ฅผ ์†์‰ฝ๊ฒŒ ์ถ”๊ฐ€, ์ˆ˜์ • ๋ฐ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„ํ„ฐ ๊ฐ’์—๋Š” ๋ถ€๋ชจ ๋˜๋Š” ์กฐํšŒ ํ•„๋“œ๋ฅผ ๋ฐ”์ธ๋”ฉํ•  ์ˆ˜ ์žˆ์–ด ๋™์ ์ธ ์กฐ๊ฑด ์„ค์ •๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋ณด๋‹ค ๋ณต์žกํ•œ ์กฐ๊ฑด์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ, SOQL ๋ฌธ์„ ์ง์ ‘ ์ž…๋ ฅํ•˜์—ฌ ํ•„ํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    SOQL ์ž‘์„ฑ

    ๋ณต์žกํ•œ ์กฐ๊ฑด(์˜ˆ: ์„œ๋ธŒ์ฟผ๋ฆฌ)์ด๋‚˜ ํ•„ํ„ฐ ๋„๊ตฌ์—์„œ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š” ํ•„๋“œ, ์—ฐ์‚ฐ์ž, ๊ฐ’์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ์ง์ ‘ SOQL ์กฐ๊ฑด์ ˆ์„ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ•„ํ„ฐ ๋„๊ตฌ๋กœ ์กฐ๊ฑด์„ ์„ค์ •ํ•œ ๊ฒฝ์šฐ, ํ•ด๋‹น ์กฐ๊ฑด์ด SOQL ์ž…๋ ฅ๋ž€์— ์ž๋™์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ (Business Rule)

    ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ๊ณผ ๊ด€๋ จ๋œ ๊ฐœ์ฒด๋‚˜ ์™ธ๋ถ€ API ์„œ๋ฒ„์—์„œ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜, ๋ณต์žกํ•œ ๋กœ์ง์ด๋‚˜ ๊ณ„์‚ฐ์‹์„ ์‚ฌ์šฉํ•ด ์ฒ˜๋ฆฌ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ๊ป˜ ํ‘œ์‹œํ•˜๊ฑฐ๋‚˜ ์ผ๋ถ€ ํ•„๋“œ์— ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ •

    ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ •(Setup Lookup Selector) ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ •(Setup Line Item Editor) ๋‹จ๊ณ„๋กœ ์ด๋™ํ•˜๋ฉด ํ•˜๋‹จ์— ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๋ ˆ์ด์•„์›ƒ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

    ๊ธฐ์ดˆ ์‚ฌ์šฉ ์˜ˆ์ œ

    Line-item Configurator๋ฅผ ๋น ๋ฅด๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ตฌ์„ฑํ•œ ๊ฐ„๋‹จํ•œ ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.

    ๊ธฐํšŒ์˜ ๊ธฐํšŒ ์ œํ’ˆ Line-item Configurator ๊ตฌํ˜„ ์˜ˆ์‹œ

    ๋ผ์ธ ์•„์ดํ…œ ์˜ต์…˜ ๊ฐ’์˜ ํ‘œ์‹œ ๋ฐ ์ €์žฅ ๋ฐฉ์‹

    ๋ผ์ธ ์•„์ดํ…œ์˜ ์˜ต์…˜ ๊ฐ’์˜ ํ‘œ์‹œ ๋ฐ ์ €์žฅ ๋ฐฉ์‹์€ ์ผ๋ถ€ ์˜ต์…˜ ๊ฐ’๊ณผ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ์ถ”๊ฐ€๋œ ํ•„๋“œ ์„ค์ •์— ๋”ฐ๋ผ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ์—์„œ ์˜ต์…˜์€ ๋ชจ๋‘ ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ˆ˜๋Ÿ‰๊ณผ ๊ฐ€๊ฒฉ์€ ์˜ต์…˜ ๋ฐ์ดํ„ฐ ์„ค์ •์—์„œ โ€˜์ˆ˜๋Ÿ‰/๊ฐ€๊ฒฉ ํŽธ์ง‘ ๊ฐ€๋Šฅโ€™ ์˜ต์…˜์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ผ๋ถ€ ์˜ต์…˜ ๊ฐ’์˜ ํ‘œํ˜„ ๋ฐฉ์‹

    1

    JSON ๋‚ด๋ณด๋‚ด๊ธฐ (Export JSON)

    JSON ๋‚ด๋ณด๋‚ด๊ธฐ๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ๋ฐ์ดํ„ฐ๋ฅผ JSON์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ, ํŒŒ์ผ ์ €์žฅ์ด๋‚˜ ์™ธ๋ถ€ ์‹œ์Šคํ…œ ์ „๋‹ฌ ๋“ฑ์— ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

    2

    JSON ๊ฐ€์ ธ์˜ค๊ธฐ (Import JSON)

    JSON ๊ฐ€์ ธ์˜ค๊ธฐ๋Š” JSON ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ง์— ๋ถˆ๋Ÿฌ์™€์„œ, ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ํ•ด์„ํ•˜๊ณ  ์ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž๋Š” ๊ธฐ์กด์— ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ์„ค์ •์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Migration App
    ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ ์„ค์ •
    ๋ฐ์ดํ„ฐ์†Œ์Šค

    ์ œํ’ˆ ์ด๋ฆ„๊ณผ ๊ฐ€๊ฒฉ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ์ฐธ์กฐ ๊ฐœ์ฒด๋กœ, ๊ธฐํšŒ ์ œํ’ˆ์—์„œ Lookup ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.

    ๋ถ€๋ชจ ๊ฐœ์ฒด ์„ค์ •ํ•˜๊ธฐ >
    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด ์„ค์ •ํ•˜๊ธฐ >
    ์กฐํšŒ ๊ฐœ์ฒด ์„ค์ •ํ•˜๊ธฐ >
    ๊ธฐํšŒ ์ œํ’ˆ์€ Junction ๊ฐœ์ฒด๋กœ, ๊ธฐํšŒ์™€ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์„ ์—ฐ๊ฒฐํ•˜์—ฌ ํŠน์ • ๊ธฐํšŒ์˜ ์ œํ’ˆ ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
    ๊ฐœ์ฒด ๋ฐ ๋ถ€๋ชจ ์ฐธ์กฐ ํ•„๋“œ ์„ค์ •ํ•˜๊ธฐ
    ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ์˜ ํ•„ํ„ฐ์™€ ์ •๋ ฌ ์ˆœ์„œ ์„ค์ •ํ•˜๊ธฐ
    ๋ผ์ธ ์•„์ดํ…œ ์‚ญ์ œ ์ œ์–ดํ•˜๊ธฐ
    ์ž๋™ ๋ฒˆํ˜ธ ์„ค์ •ํ•˜๊ธฐ

    2

    ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ

    ๋ฒ„ํŠผ ์ƒ์„ฑ ํ›„, ์ถ”๊ฐ€ํ•  ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ์˜ Aura Component ํ™œ์šฉํ•˜๊ธฐ >
    ๊ฒฐ๊ณผ ํ™”๋ฉด

    ํ•„ํ„ฐ์—์„œ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’์„ ์ง€์ •ํ•˜๋ ค๋ฉด {$Parent.FieldName} ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ”์ธ๋”ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ์šฉ์ž๊ฐ€ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ†ตํ™”์™€ ์ผ์น˜ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋งŒ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด, ํ•„ํ„ฐ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

    CurrencyIsoCode = {$Parent.CurrencyIsoCode}

    ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ•„ํ„ฐ๊ฐ€ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ†ตํ™” ํ•„๋“œ๋ฅผ ๋™์ ์œผ๋กœ ์ฐธ์กฐํ•˜์—ฌ ์ƒํ™ฉ์— ๋งž๋Š” ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ํ˜„์žฌ ํ•„๋“œ ๋ณด์•ˆ ์ˆ˜์ค€(Field-Level Security)์— ๋”ฐ๋ผ ํ•„๋“œ๊ฐ€ ์ œ์–ด๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํ•ด๋‹น ํ•„๋“œ์— ๋Œ€ํ•œ ๊ถŒํ•œ์ด ์—†์„ ๊ฒฝ์šฐ, ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ถ”ํ›„์— ๊ฐœ์„ ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

    ํ˜„์žฌ ํ•„๋“œ ๋ณด์•ˆ ์ˆ˜์ค€(Field-Level Security)์— ๋”ฐ๋ผ ํ•„๋“œ๊ฐ€ ์ œ์–ด๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํ•ด๋‹น ํ•„๋“œ์— ๋Œ€ํ•œ ๊ถŒํ•œ์ด ์—†์„ ๊ฒฝ์šฐ, ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ถ”ํ›„์— ๊ฐœ์„ ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

    <aura:component implements="force:lightningQuickActionWithoutHeader,force:hasRecordId" >   
        <SBLI:LineItemConfigurator builderId="XXX..." recordId="{!v.recordId}" />
    </aura:component>

    builderId

    ๋นŒ๋”์˜ ๋ ˆ์ฝ”๋“œ ID ์ž…๋‹ˆ๋‹ค.

    โœ”๏ธ

    recordId

    ๋Œ€์ƒ ๋นŒ๋”์˜ ๋ถ€๋ชจ ๋ ˆ์ฝ”๋“œ ID์ž…๋‹ˆ๋‹ค.

    โœ”๏ธ

    2

    ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ์ง์ ‘ ์„ ํƒ์„ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์„ ํ†ตํ•ด ๋ถ€๋ชจ ๊ฐœ์ฒด, ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด, ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์ˆ˜๋™์œผ๋กœ ์ •์˜ํ•˜์—ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์Šคํƒ ๋‹ค๋“œ: ์ž๋™ ์„ค์ •ํ•˜๊ธฐ

    ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์€ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ๊ณผ ์กฐํšŒ ๊ฐœ์ฒด์— ํ•„์š”ํ•œ ์„ค์ •์„ ์ž๋™์œผ๋กœ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํŽธ์ง‘๊ธฐ๋ฅผ ๋น ๋ฅด๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐํšŒ(Opportunity)์— ๋Œ€ํ•ด ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์„ ์ ์šฉํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž๋™ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค:

    • ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด(Line Item Object):

      • ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

      • ๋‹จ๊ฐ€, ์ˆ˜๋Ÿ‰, ์ด ๊ธˆ์•ก ๋“ฑ ํ•„์ˆ˜ ํ•„๋“œ๊ฐ€ ์ž๋™์œผ๋กœ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

    • ์กฐํšŒ ๊ฐœ์ฒด(Lookup Object):

      • ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

      • ์กฐํšŒ ์‹œ ํ•„์š”ํ•œ ํ•„๋“œ(์˜ˆ: ์ œํ’ˆ๋ช…, ๋‹จ๊ฐ€) ๋ฐ ํ•„ํ„ฐ ์กฐ๊ฑด(์˜ˆ: Pricebook2Id)์ด ์ž๋™์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

    ์Šคํƒ ๋‹ค๋“œ ๋Œ€์ƒ ๊ฐœ์ฒด

    ์ง์ ‘ ์„ ํƒ: ๋งž์ถคํ˜• ๋ผ์ธ ์•„์ดํ…œ ์„ค์ •ํ•˜๊ธฐ

    ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ์ง์ ‘ ์„ค์ •์„ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์„ ํ†ตํ•ด ๋ถ€๋ชจ ๊ฐœ์ฒด, ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด, ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์ˆ˜๋™์œผ๋กœ ์ •์˜ํ•˜์—ฌ ํŽธ์ง‘๊ธฐ๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ง์ ‘ ์„ ํƒ ์˜ต์…˜์„ ์„ ํƒํ•˜๊ฑฐ๋‚˜, ๋ถ€๋ชจ ๊ฐœ์ฒด๊ฐ€ ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด(Custom Object)์ธ ๊ฒฝ์šฐ, ์•„๋ž˜์™€ ๊ฐ™์€ ์„ค์ • ์˜ต์…˜์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค:

    1

    ๊ฐœ์ฒด (Object)

    ๋ผ์ธ ์•„์ดํ…œ์œผ๋กœ ์‚ฌ์šฉํ•  ๋ถ€๋ชจ์˜ ํ•˜์œ„ ๊ฐœ์ฒด๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๋‹จ๊ณ„๋Š” ๋ถ€๋ชจ ๊ฐœ์ฒด์™€ ์—ฐ๊ฒฐ๋œ ํ•˜์œ„ ๊ฐœ์ฒด ์ค‘์—์„œ ๋ผ์ธ ์•„์ดํ…œ์œผ๋กœ ์‚ฌ์šฉํ•  ์ ์ ˆํ•œ ๊ฐœ์ฒด๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

    2

    ๋ถ€๋ชจ ์ฐธ์กฐ ํ•„๋“œ (Parent Reference Field)

    ์„ ํƒํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์—์„œ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๋Š” ํ•„๋“œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ•„๋“œ๋Š” ๋ผ์ธ ์•„์ดํ…œ ์ €์žฅ ์‹œ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ์ž๋™์œผ๋กœ ํ• ๋‹นํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

    1

    ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์€ ๋ถ€๋ชจ ๊ฐœ์ฒด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ๊ณผ ์กฐํšŒ ๊ฐœ์ฒด์— ํ•„์š”ํ•œ ์„ค์ •์„ ์ž๋™์œผ๋กœ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํŽธ์ง‘๊ธฐ๋ฅผ ๋น ๋ฅด๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ํŽธ์ง‘๊ธฐ์—์„œ ์กฐํšŒ ์„ ํƒ๊ธฐ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ” ๋ณ€๊ฒฝํ•˜๊ธฐ

    ์กฐํšŒ ๊ฐœ์ฒด ์ด๋ฆ„์ด ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์œผ๋กœ ์„ค์ •๋˜์–ด ์กฐํšŒ ์„ ํƒ๊ธฐ ๋ฒ„ํŠผ์˜ ์ด๋ฆ„๋„ ์กฐํšŒ ๊ฐœ์ฒด ์ด๋ฆ„์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฌํ•œ ๋ฒ„ํŠผ ์ด๋ฆ„์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์–ด์ƒ‰ํ•˜๊ฒŒ ๋ณด์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ธ์ผ์ฆˆํฌ์Šค ์„ค์ •์—์„œ ๊ฐœ์ฒด ๋ ˆ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ๋น„ํšจ์œจ์ ์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ๊ฐœ์ฒด๋Š” ์—ฌ๋Ÿฌ ๊ณณ์—์„œ ๋‹ค์–‘ํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๋ฏ€๋กœ, ๋‹ค๋ฅธ ํ™”๋ฉด์—๋„ ์˜ํ–ฅ์„ ๋ฏธ์น  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

    ์„ค์ •

    1. ์‚ฌ์ด๋“œ ํŒจ๋„์—์„œ ๋ ˆ์ด๋ธ” ๋ฉ”๋‰ด๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

    2. ์กฐํšŒ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ” ์ž…๋ ฅ๋ž€ ์˜†์— ์•„์ด์ฝ˜์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    3. ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ๋‘” ์ปค์Šคํ…€ ๋ผ๋ฒจ โ€˜์ œํ’ˆ ์ถ”๊ฐ€(SmallBuilder_AddProducts)โ€™์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    4. ์ž…๋ ฅ๋ž€์— ์ปค์Šคํ…€ ๋ผ๋ฒจ({$CustomLabel.SmallBuilder_AddProducts})์ด ๋ฐ”์ธ๋”ฉ๋œ ๊ฒƒ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    5. ํŽธ์ง‘๊ธฐ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์กฐํšŒ ์„ ํƒ๊ธฐ ๋ฒ„ํŠผ์ด ์ œ๋Œ€๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    ๊ฒฐ๊ณผ

    ์‚ฌ์šฉ์ž์˜ ์–ธ์–ด ์„ค์ •์— ๋”ฐ๋ผ ์ปค์Šคํ…€ ๋ผ๋ฒจ์ด ๋ฒˆ์—ญ๋˜์–ด ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์ถ”๊ฐ€(SmallBuilder_AddProducts) ๋ ˆ์ด๋ธ”์— ๋Œ€ํ•œ ๋ฒˆ์—ญ

    ์–ธ์–ด
    ๋ฒˆ์—ญ

    ์˜์–ด

    Add Products

    ํ•œ๊ตญ์–ด

    ์ œํ’ˆ ์ถ”๊ฐ€

    ์‚ฌ์šฉ์ž์˜ ์–ธ์–ด๊ฐ€ ํ•œ๊ตญ์–ด์ธ ๊ฒฝ์šฐ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”์ด '์ œํ’ˆ ์ถ”๊ฐ€'๋กœ ๋ณด์ด๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์‚ฌ์šฉ์ž์˜ ์–ธ์–ด๊ฐ€ ์˜์–ด์ธ ๊ฒฝ์šฐ ๋ฒ„ํŠผ ๋ ˆ์ด๋ธ”์ด 'Add Products'๋กœ ๋ณด์ด๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ์ง์ ‘ ์ž‘์„ฑํ•œ SOQL์ด ์žˆ๋Š” ๊ฒฝ์šฐ, ํ•„ํ„ฐ ๋„๊ตฌ์—์„œ ์„ค์ •ํ•œ ์กฐ๊ฑด๊ณผ
    AND
    ์กฐ๊ฑด์œผ๋กœ ์ž๋™ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

    ๋งŒ์•ฝ ํ•„๋“œ๋‚˜ ๋ฐ”์ธ๋”ฉํ•  ๋ถ€๋ชจ ๋ฐ ์กฐํšŒ ํ•„๋“œ๋ฅผ ์‚ฝ์ž…ํ•ด์•ผ ํ•˜๋Š”๋ฐ ํ•„๋“œ API๋ช…์„ ์ž˜ ๋ชจ๋ฅด๋Š” ๊ฒฝ์šฐ ์šฐ์ธก ์ƒ๋‹จ์— โ€˜ํ‘œํ˜„์‹ ์‚ฝ์ž…โ€™ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๋„์›€์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ•„ํ„ฐ ์„ค์ • ์‹œ ๋ถ€๋ชจ ๊ฐœ์ฒด ํ•„๋“œ์™€ ๋ฐ”์ธ๋”ฉํ•˜๊ธฐ

    ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•  ๋•Œ, ์กฐ๊ฑด๊ฐ’์„ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’๊ณผ ๋ฐ”์ธ๋”ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ’ ์ž…๋ ฅ๋ž€ ์•ž์— ์žˆ๋Š” ์˜ต์…˜์—์„œ ๋ถ€๋ชจ๋ฅผ ์„ ํƒํ•˜๋ฉด, ํ•ด๋‹น ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•„๋“œ๋ฅผ ์„ ํƒํ•˜์—ฌ ํ•„ํ„ฐ ์กฐ๊ฑด์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋™์ ์ธ ํ•„๋“œ ๊ฐ’์„ ๊ธฐ์ค€์œผ๋กœ ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์–ด ๋”์šฑ ์œ ์—ฐํ•œ ๋ฐ์ดํ„ฐ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ: ๊ธฐํšŒ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก์— ํ•ด๋‹นํ•˜๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ์กฐํšŒํ•˜๊ธฐ

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)์ด ๋ถ€๋ชจ ๊ฐœ์ฒด์ธ ๊ธฐํšŒ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋„๋ก ํ•„ํ„ฐ๋ฅผ ์„ค์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    1. ๊ฐœ์ฒด ์—ฐ๊ฒฐ ๋‹จ๊ณ„์—์„œ ์กฐํšŒ ๊ฐœ์ฒด์˜ ํ•„ํ„ฐ ์„ค์ •(Filter by Query) ํ•ญ๋ชฉ์œผ๋กœ ์ด๋™ํ•œ ํ›„, ํ•„๋“œ์— ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)์„ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    1. ๊ฐ’ ์ž…๋ ฅ๋ž€ ์˜†์˜ ์˜ต์…˜์—์„œ ๋ถ€๋ชจ(Parent)๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    1. ๊ฐ’ ์ž…๋ ฅ๋ž€์— ๋‹ค์‹œ ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)์„ ๊ฒ€์ƒ‰ํ•˜์—ฌ, ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ID๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    1. SOQL ํŽธ์ง‘๊ธฐ๋ฅผ ์—ด์–ด๋ณด๋ฉด, ๊ฐ€๊ฒฉ ๋ชฉ๋ก ์กฐ๊ฑด์ด ๋ถ€๋ชจ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•„๋“œ์™€ ๋ฐ”์ธ๋”ฉ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด ์„ค์ •์„ ํ†ตํ•ด ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก๊ณผ ์ผ์น˜ํ•˜๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ๋ฐ์ดํ„ฐ๋ฅผ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„ํ„ฐ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์กฐ๊ฑด์„ ์‰ฝ๊ณ  ํŽธ๋ฆฌํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋Š” ํ‰๊ฐ€ ์ด๋ฒคํŠธ(Evaluation Event)๋ฅผ ํ•„์ˆ˜๋กœ ์„ค์ •ํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ‰๊ฐ€ ์ด๋ฒคํŠธ(Evaluation Event)๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐํ™” ์‹œ(On Initialization): ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ƒˆ๋กœ ์ถ”๊ฐ€๋˜์—ˆ์„ ๋•Œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ๋กœ๋”ฉ ์‹œ(On Loading): ๋ผ์ธ ์•„์ดํ…œ ํ™”๋ฉด์ด ๋กœ๋“œ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ๋ณ€๊ฒฝ ์‹œ(On Change): ๋ผ์ธ ์•„์ดํ…œ์˜ ํŠน์ • ํ•„๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ์ €์žฅ ์ „(Before Save): ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๋“ค์ด ์ €์žฅ๋˜๊ธฐ ์ „ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์œ ํ˜•

    ๊ด€๋ จ ๊ฐ์ฒด์—์„œ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

    ๋‹จ์ˆœํžˆ ๊ด€๋ จ๋œ ๊ฐœ์ฒด๋ฅผ ์กฐํšŒํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ฐ์ดํ„ฐ์†Œ์Šค ๊ธฐ๋ณธ ์„ค์ •์„ ์‚ฌ์šฉํ•ด๋ณด์„ธ์š”. ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ๊ณผ ๊ด€๋ จ๋œ ๊ฐœ์ฒด๋ฅผ ์„ ํƒํ•˜๊ณ , ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’์„ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์— ๋งคํ•‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

    ์™ธ๋ถ€ API ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜, ๋ฐ์ดํ„ฐ ์กฐํšŒ ๋ฐ ๊ฒฐํ•ฉ ์‹œ ๋ณต์žกํ•œ ๋กœ์ง์ด ์š”๊ตฌ๋˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ์†Œ์Šค ๊ณ ๊ธ‰์„ ์„ค์ •ํ•˜๋ ค๋ฉด Apex ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด ๊ตฌํ˜„ํ•˜๋ฏ€๋กœ, ๋ฐ์ดํ„ฐ์†Œ์Šค ๊ธฐ๋ณธ๋ณด๋‹ค ๋ฐ์ดํ„ฐ๋ฅผ ๋” ์ž์œ ๋กญ๊ฒŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์‹คํ–‰ ์ˆœ์„œ

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์€ ๊ด€๋ จ ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ทœ์น™(Basic)์ด ๋จผ์ € ์‹คํ–‰๋œ ํ›„, Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ทœ์น™(Advanced)์ด ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    1

    ๊ด€๋ จ ๊ฐ์ฒด๋ฅผ ์ด์šฉํ•œ ๊ทœ์น™ (Basic)

    ์ถ”๊ฐ€๋œ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    2

    Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•œ ๊ทœ์น™ (Advanced)

    ์ผ๋ฐ˜์ ์œผ๋กœ ์ถ”๊ฐ€๋œ ์ˆœ์„œ๋Œ€๋กœ ์‹คํ–‰๋˜์ง€๋งŒ, ์‹คํ–‰ ์ˆœ์„œ๋Š” ๋ณด์žฅ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐ์กด์— ์žˆ๋Š” ๊ธฐํšŒ ์ œํ’ˆ ๋“ฑ๋ก ํ™”๋ฉด์—์„œ ์ˆ˜๋Ÿ‰ ๋ฐ ๋‹จ๊ฐ€ ๋ณ€๊ฒฝ ์‹œ ์ž๋™ ๊ณ„์‚ฐ์ด ์•ˆ ๋˜๋Š” ๋ถ€๋ถ„์„ Line-Item Configurator๋ฅผ ์ด์šฉํ•ด ํ• ์ธ์œจ ์ ์šฉ, ์ด์•ก ๊ณ„์‚ฐ ๋ฐ ํ•˜๋‹จ์— ์š”์•ฝ๊นŒ์ง€ ๋‹ค์‹œ ์žฌ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    ๋น„์ฆˆ๋‹ˆ์Šค ์ถœ์žฅ ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์˜ˆ์‹œ

    Line-Item Configurator๋Š” ํ‘œ์ค€ ๊ฐœ์ฒด๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด๋ฅผ ์ด์šฉํ•ด์„œ ์„ธ์ผ์ฆˆํฌ์Šค์— ์‰ฝ๊ฒŒ Line-Item ์ž…๋ ฅ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์•„๋ž˜ ์˜์ƒ์—์„œ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐœ์ฒด์ธ '๋น„์ฆˆ๋‹ˆ์Šค ์ถœ์žฅ'์„ ์ด์šฉํ•˜์—ฌ Line-Item Configurator๋ฅผ ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์—๋Š” ํ‘œ์ค€ ํ™”๋ฉด์„ ์ด์šฉ ์‹œ Line-Item ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ํ•œ ๊ฑด์”ฉ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ž…๋ ฅ ํ™”๋ฉด์˜ ํ•„๋“œ๋“ค์„ ์ž์œ ๋กญ๊ฒŒ ์ปค์Šคํ…€ํ•˜๋Š”๊ฒŒ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Configurator๋ฅผ ํ†ตํ•ด ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„๋˜์—ˆ๋Š”์ง€ ์˜์ƒ์„ ํ†ตํ•ด ๋ณด์—ฌ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

    ์˜ต์…˜ ๊ฐ’
    ์ €์žฅ ๋ฐฉ์‹

    Quantity

    ๊ตฌ์„ฑ ์ œํ’ˆ์˜ ์ˆ˜๋Ÿ‰๊ณผ ์˜ต์…˜์˜ ์ˆ˜๋Ÿ‰์„ ๊ณฑํ•˜์—ฌ ๊ณ„์‚ฐ๋œ ๊ฐ’์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.

    Total Price

    ์˜ต์…˜์˜ ๋‹จ๊ฐ€์™€ ์ˆ˜๋Ÿ‰์„ ๊ณ„์‚ฐํ•œ ๊ฒฐ๊ณผ ๊ฐ’์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ

    ํ•ด๋‹น ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ์ถ”๊ฐ€๋œ ์˜ต์…˜์˜ ์ˆ˜๋Ÿ‰์€ 2์ด๊ณ , ์ด์•ก์€ $90์ž…๋‹ˆ๋‹ค. ๊ณ„์‚ฐ ๋ฐฉ์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค:

    ์˜ต์…˜ ํ•„๋“œ
    ๊ณ„์‚ฐ ๋ฐฉ์‹
    ๊ฒฐ๊ณผ

    ์ˆ˜๋Ÿ‰

    ๊ตฌ์„ฑ ์ œํ’ˆ ์ˆ˜๋Ÿ‰ ร— ์˜ต์…˜ ์ˆ˜๋Ÿ‰ = ์˜ต์…˜์˜ ์ด ์ˆ˜๋Ÿ‰

    2 (๊ตฌ์„ฑ ์ œํ’ˆ ์ˆ˜๋Ÿ‰) ร— 1 (์˜ต์…˜ ์ˆ˜๋Ÿ‰) = 2 (์˜ต์…˜ ์ด ์ˆ˜๋Ÿ‰)

    ์ด์•ก

    ์˜ต์…˜ ์ด ์ˆ˜๋Ÿ‰ ร— ์˜ต์…˜ ๋‹จ๊ฐ€ = ์˜ต์…˜์˜ ์ด์•ก

    2 (์˜ต์…˜ ์ด ์ˆ˜๋Ÿ‰) ร— $45.00 (์˜ต์…˜ ๋‹จ๊ฐ€) = $90.00 (์˜ต์…˜ ์ด์•ก)

    ๋ผ์ธ ์•„์ดํ…œ ์—ด์˜ ์„ค์ •์— ๋”ฐ๋ฅธ ํ‘œ์‹œ ๋ฐ ์ €์žฅ

    ์˜ต์…˜ ๊ฐ’์ด ๋งคํ•‘๋œ ํ•„๋“œ๊ฐ€ ๋ผ์ธ ์•„์ดํ…œ ์—ด๋กœ ์ถ”๊ฐ€๋œ ๊ฒฝ์šฐ, ํ•ด๋‹น ์—ด์— โ€˜์ €์žฅ ์•ˆ ํ•จโ€™ ์„ค์ •์ด ํ™œ์„ฑํ™”๋˜์–ด ์žˆ๋‹ค๋ฉด ํ•ด๋‹น ์„ค์ •์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ผ์ธ ์•„์ดํ…œ ์—ด์— ์ถ”๊ฐ€๋˜์ง€ ์•Š์€ ํ•„๋“œ๋Š” ํŽธ์ง‘๊ธฐ์—์„œ ํ‘œ์‹œ๋˜์ง€ ์•Š์ง€๋งŒ ๋‚ด๋ถ€์ ์œผ๋กœ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

    ๋งคํ•‘๋œ ๋ผ์ธ ์•„์ดํ…œ์˜ ํ•„๋“œ๊ฐ€ ์„ธ์ผ์ฆˆํฌ์Šค ํ•„๋“œ ๊ถŒํ•œ์—์„œ ์ฝ๊ธฐ ์ „์šฉ์œผ๋กœ ์„ค์ •๋œ ๊ฒฝ์šฐ, ํ•ด๋‹น ํ•„๋“œ๋Š” ์ €์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ •์—์„œ ์ด์•ก(TotalPrice) ํ•„๋“œ์— โ€˜์ €์žฅ ์•ˆ ํ•จโ€™ ์„ค์ •์ด ํ™œ์„ฑํ™”๋œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜์˜ Total Price ๊ฐ’์ด ๋ผ์ธ ์•„์ดํ…œ์˜ ์ด์•ก(TotalPrice) ํ•„๋“œ๋กœ ๋งคํ•‘๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    ํŽธ์ง‘๊ธฐ์—์„œ ์˜ต์…˜์„ ์ถ”๊ฐ€ํ•œ ํ›„ ์ €์žฅ ์‹œ, ์˜ต์…˜์˜ ์ด์•ก(TotalPrice) ํ•„๋“œ๋Š” ๋ผ์ธ ์•„์ดํ…œ ์—ด ์„ค์ •์— ๋”ฐ๋ผ ์ €์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์ถ”๊ฐ€ ์‹œ ์˜ต์…˜ ์„ ํƒ ๊ฑด๋„ˆ๋›ฐ๊ธฐ, ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜ ํ•„ํ„ฐํ•˜๊ธฐ ๋“ฑ ๊ธฐ๋ณธ์ ์ธ ์„ค์ •์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ์„ค์ •

    ๊ตฌ์„ฑ ์ œํ’ˆ๊ณผ ์˜ต์…˜ ์ œํ’ˆ ๊ฐ„์˜ ๋ผ์ธ ์•„์ดํ…œ์„ ์—ฐ๊ฒฐํ•  ํ•„๋“œ๋ฅผ ์„ค์ •ํ•˜๊ฑฐ๋‚˜, ์˜ต์…˜ ์ •๋ณด๋ฅผ ์ €์žฅํ•  ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ๋ฅผ ๋งคํ•‘ํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ ์„ค์ •
    ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ์—์„œ 3๊ฐœ์˜ ํ•„ํ„ฐ๋ฅผ ์ถ”๊ฐ€

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ(Query Wizard)
    ํŽธ์ง‘๊ธฐ ๋กœ๋“œ ์‹œ ์˜ต์…˜์ด ํ™•์žฅ๋˜์–ด ์žˆ์Œ
    ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„๊ฐ€ ๋‚˜ํƒ€๋‚จ

    ํ•„ํ„ฐ์—์„œ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’์„ ์ง€์ •ํ•˜๋ ค๋ฉด {$Parent.FieldName} ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ”์ธ๋”ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‚ฌ์šฉ์ž๊ฐ€ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ†ตํ™”์™€ ์ผ์น˜ํ•˜๋Š” ๋ ˆ์ฝ”๋“œ๋งŒ ์กฐํšŒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋ฉด, ํ•„ํ„ฐ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค:

    CurrencyIsoCode = {$Parent.CurrencyIsoCode}

    ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ•„ํ„ฐ๊ฐ€ ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ํ†ตํ™” ํ•„๋“œ๋ฅผ ๋™์ ์œผ๋กœ ์ฐธ์กฐํ•˜์—ฌ ์ƒํ™ฉ์— ๋งž๋Š” ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜ ์„ค์ •ํ•˜๊ธฐ
    ์ œํ’ˆ ์˜ต์…˜ ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑํ•˜๊ธฐ

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    ์„ค์ • ๋ฐฉ๋ฒ•

    ๋ถ€๋ชจ ๊ฐœ์ฒด์—์„œ ์‹œ์ž‘ํ•˜์—ฌ ํ•˜์œ„ ๊ฐœ์ฒด์ธ ๋ผ์ธ ์•„์ดํ…œ์„ ์„ ํƒํ•˜๊ณ , ๋ผ์ธ ์•„์ดํ…œ์ด ์ฐธ์กฐํ•˜๊ณ  ์žˆ๋Š” ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์ง€์ •ํ•  ๋•Œ๋Š”, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์ฐธ์กฐํ•˜๋Š” ํ•„๋“œ๋ฅผ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ๊ธฐํšŒ(Opportunity)์— ๋Œ€ํ•œ ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋นŒ๋”๋ฅผ ์„ค์ •ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ๊ฐœ์ฒด ๊ตฌ์กฐ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ๊ธฐํšŒ ์ œํ’ˆ์€ ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค:

    • ๊ธฐํšŒ(Opportunity)

      ๊ธฐํšŒ ์ œํ’ˆ์˜ ์ƒ์œ„ ๊ฐœ์ฒด๋กœ ๊ธฐํšŒ ID(OpportunityId) ํ•„๋“œ๋กœ ์ฐธ์กฐ๋ฉ๋‹ˆ๋‹ค.

    • ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

      ๊ธฐํšŒ ์ œํ’ˆ์ด ์ฐธ์กฐํ•˜๊ณ  ์žˆ๋Š” ๊ฐœ์ฒด๋กœ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ID(PricebookEntryId) ํ•„๋“œ๋กœ ์ฐธ์กฐ๋ฉ๋‹ˆ๋‹ค.

    ๋ถ€๋ชจ ๊ฐœ์ฒด๋Š” ๊ธฐํšŒ(Opportunity)๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด๋Š” ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์œผ๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)์€ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)์„ ์ฐธ์กฐํ•˜์—ฌ ์ƒ์„ฑ๋˜๊ธฐ ๋•Œ๋ฌธ์—, ์กฐํšŒ ์ฐธ์กฐ ํ•„๋“œ๋กœ ๊ธฐํšŒ ์ œํ’ˆ์˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ID(PricebookEntryId) ํ•„๋“œ๋ฅผ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    SmallBuilder Line Items - no code custom line item configurator for any object in SalesforceSalesforce AppExchange | Leading Enterprise Cloud Marketplace

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    1 AND 2 AND 3
    1 OR 2 OR 3
    IsActive__c = true

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    Logo

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.37๋ถ€ํ„ฐ โ€˜๋ฐ์ดํ„ฐ์†Œ์Šค(Data Source)โ€™๊ฐ€ โ€˜๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(Business Rule)โ€™์œผ๋กœ ๋ช…์นญ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ์Šคํƒ ๋‹ค๋“œ: ์ž๋™ ์„ค์ •ํ•˜๊ธฐ
    ์ง์ ‘ ์„ ํƒ: ๋งž์ถคํ˜• ๋ผ์ธ ์•„์ดํ…œ ์„ค์ •ํ•˜๊ธฐ
    ๋Œ€์ƒ ๊ฐœ์ฒด
    ๋ถ€๋ชจ ๊ฐœ์ฒด
    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด
    ์กฐํšŒ ๊ฐœ์ฒด

    ๋ผ์ธ ์•„์ดํ…œ ์„ค์ •

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ตฌ์„ฑ ์ œํ’ˆ์˜ ๋ผ์ธ ์•„์ดํ…œ๊ณผ ์˜ต์…˜ ์ œํ’ˆ์˜ ๋ผ์ธ ์•„์ดํ…œ ๊ฐ„ ์—ฐ๊ฒฐํ•  ํ•„๋“œ๋ฅผ ์„ค์ •ํ•˜๊ณ  ์˜ต์…˜ ์ •๋ณด๋ฅผ ์ €์žฅํ•  ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ๋ฅผ ๋งคํ•‘ํ•˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    ์ƒ์œ„ ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ

    ๊ตฌ์„ฑ ์ œํ’ˆ ๋ผ์ธ ์•„์ดํ…œ๊ณผ ํ•ด๋‹น ์˜ต์…˜ ๋ผ์ธ ์•„์ดํ…œ์„ ์—ฐ๊ฒฐํ•  ํ•„๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ•„๋“œ๋Š” Self-Relationship์ด์—ฌ์•ผ ํ•˜๋ฉฐ, Self-Relationship์€ ๋™์ผํ•œ ๊ฐœ์ฒด ๋‚ด์—์„œ ๋ ˆ์ฝ”๋“œ ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ตฌ์กฐ๋กœ, ํ•œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ๊ฐ™์€ ๊ฐœ์ฒด์˜ ๋‹ค๋ฅธ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฐธ์กฐํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•˜๋Š” ๊ด€๊ณ„์ž…๋‹ˆ๋‹ค.

    ๊ธฐํšŒ ์ œํ’ˆ์—์„œ๋Š” Base Line Item for Option(SBLI__BaseLineItemForOption__c) ํ•„๋“œ๋ฅผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ธฐํšŒ์— ๋Œ€ํ•œ ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์„ ์ง„ํ–‰ํ•œ ๊ฒฝ์šฐ, ์ด ํ•„๋“œ๊ฐ€ ์ƒ์œ„ ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ๋กœ ์ž๋™ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

    ํ•„์š”์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ํ•„๋“œ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ

    ์ƒ์œ„ ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ๋ฅผ Base Line Item for Option(SBLI__BaseLineItemForOption__c)๋กœ ์„ค์ •ํ–ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด, ์•„๋ž˜ ๋‹ค์ด์–ด๊ทธ๋žจ๊ณผ ๊ฐ™์€ Self-Relationship ๊ตฌ์กฐ๊ฐ€ ํ˜•์„ฑ๋ฉ๋‹ˆ๋‹ค.

    ์ด ์„ค์ •์„ ํ†ตํ•ด ์˜ต์…˜์œผ๋กœ ์ƒ์„ฑ๋œ ๊ธฐํšŒ ์ œํ’ˆ ๋ ˆ์ฝ”๋“œ๊ฐ€ ๊ตฌ์„ฑ ์ œํ’ˆ์˜ ๊ธฐํšŒ ์ œํ’ˆ ๋ ˆ์ฝ”๋“œ๋ฅผ ํ•ด๋‹น ํ•„๋“œ๋ฅผ ํ†ตํ•ด ์ฐธ์กฐํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด ์˜ˆ์‹œ

    ์˜ต์…˜ ๊ฐ’์„ ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์— ๋งคํ•‘

    ์„ ํƒํ•œ ์˜ต์…˜ ์ •๋ณด๋ฅผ ๋ผ์ธ ์•„์ดํ…œ์˜ ์–ด๋А ํ•„๋“œ์— ๋งคํ•‘ํ• ์ง€ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ์˜ต์…˜์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค:

    ํ•„๋“œ
    ์šฉ๋„
    ์œ ํ˜•
    ํ•„์ˆ˜

    ์˜ˆ์‹œ

    ๊ธฐํšŒ ์ œํ’ˆ์— ์˜ต์…˜ ๊ฐ’์„ ์•„๋ž˜์™€ ๊ฐ™์ด ๋งคํ•‘ํ•˜์˜€์Šต๋‹ˆ๋‹ค:

    ์˜ต์…˜ ๊ฐ’
    ๊ธฐํšŒ ์ œํ’ˆ ํ•„๋“œ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ํ™”๋ฉด ์˜ˆ์‹œ

    ๊ตฌ์„ฑ ์ œํ’ˆ์ธ Desktop PC Intel i3์˜ RAM ์˜ต์…˜์œผ๋กœ RAM 8GB๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์˜ต์…˜์˜ ์ˆ˜๋Ÿ‰์€ 1์ด๋ฉฐ, ์ •๊ฐ€์™€ ๋‹จ๊ฐ€๋Š” ๋™์ผํ•˜๊ฒŒ $45์ž…๋‹ˆ๋‹ค.

    ์„ ํƒํ•œ ํ›„ ์ถ”๊ฐ€๋œ ๋ผ์ธ ์•„์ดํ…œ์„ ํ™•์ธํ•˜๋ฉด, ์•ž์„œ ๋งคํ•‘ํ•œ ํ•„๋“œ์— ์ˆ˜๋Ÿ‰, ์ •๊ฐ€, ๋‹จ๊ฐ€, ์ด์•ก์˜ ๊ฐ’์ด ํ• ๋‹น๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    JSON ๊ฐ€์ ธ์˜ค๊ธฐ

    JSON ๊ฐ€์ ธ์˜ค๊ธฐ๋Š” ์™ธ๋ถ€์—์„œ ์ œ๊ณต๋œ JSON ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ง ๋‚ด๋กœ ๋ถˆ๋Ÿฌ์™€ ์ด๋ฅผ ํ•ด์„ํ•˜๊ณ  ์‹œ์Šคํ…œ์— ์ ์šฉํ•˜๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๋Š” ์ด ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๊ธฐ์กด์— ์ €์žฅํ•ด๋‘” ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ์„ค์ •์„ ์†์‰ฝ๊ฒŒ ๋ถˆ๋Ÿฌ์˜ค๊ฑฐ๋‚˜, ์ƒˆ๋กœ์šด ์„ค์ •์„ ์ถ”๊ฐ€ ๋ฐ ๊ฐฑ์‹ ํ•˜์—ฌ ํšจ์œจ์ ์œผ๋กœ ๊ตฌ์„ฑ ํ™˜๊ฒฝ์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


    ๐Ÿ”ธ ๊ฐ€์ ธ์˜ค๊ธฐ

    Import JSON ์‹œ์ž‘ํ•˜๊ธฐ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ๋‹ค๋ฅธ ์กฐ์ง์—์„œ ๋‚ด๋ณด๋‚ธ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ •์„ ๊ฐ€์ ธ์˜ค๋Š” ์ž‘์—…์ด ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.


    1

    JSON ํŒŒ์ผ ์—…๋กœ๋“œ

    ๊ฐ€์ ธ์˜ค๋ ค๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ • ์ •๋ณด๊ฐ€ ๋‹ด๊ธด JSON ํŒŒ์ผ์„ ์„ ํƒํ•˜์—ฌ ์—…๋กœ๋“œ ํ•ฉ๋‹ˆ๋‹ค.

    2

    ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ƒ์„ฑ ๋ฐ ์—…๋ฐ์ดํŠธ

    ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๋Š” Migration Key ์—ฐ๊ฒฐ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์ƒˆ๋กœ ์ƒ์„ฑ๋˜๊ฑฐ๋‚˜, ๊ธฐ์กด ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค. Migration Key๋Š” ๊ฐ€์ ธ์˜จ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ๋ ˆ์ฝ”๋“œ ID ์ž…๋‹ˆ๋‹ค.

    ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜จ ์กฐ์ง๊ณผ ํ˜„์žฌ ์กฐ์ง์˜ SmallBuilder Line Items ํŒจํ‚ค์ง€ ๋ฒ„์ „์ด ๋‹ค๋ฅผ ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ์ผ๋ถ€ ๊ฐœ์ฒด๋‚˜ ํ•„๋“œ๊ฐ€ ๋ˆ„๋ฝ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒˆํ˜ธ
    ์˜์—ญ ๋ฐ ๋ฒ„ํŠผ
    3

    ๊ฒฐ๊ณผ ํ™•์ธ

    ๊ฐ€์ ธ์˜จ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ • ์ •๋ณด์˜ ์ƒ์„ฑ ๋ฐ ์—…๋ฐ์ดํŠธ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    ๋ˆ„๋ฝ๋œ ๊ฐœ์ฒด ๋ฐ ํ•„๋“œ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ

    ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์ด ์„ฑ๊ณตํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์—๋Š” ๋ˆ„๋ฝ๋œ ๊ฐœ์ฒด ๋ฐ ํ•„๋“œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์ง€ ์•Š์œผ๋ฉฐ, ์ด๋Ÿฌํ•œ ๋ˆ„๋ฝ ํ•ญ๋ชฉ์€ ๊ฒฐ๊ณผ ํ™”๋ฉด ํ•˜๋‹จ์— ๋ณ„๋„๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ์ฒด ๋ฐ ํ•„๋“œ ๋ˆ„๋ฝ์€ SmallBuilder List ํŒจํ‚ค์ง€ ๋ฒ„์ „ ๋ถˆ์ผ์น˜ ๋˜๋Š” ํ•„๋“œ ๊ถŒํ•œ ๋ถ€์กฑ์œผ๋กœ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ํŒจํ‚ค์ง€ ๋ฒ„์ „ ๋ฐ ํ•„๋“œ ๊ถŒํ•œ์„ ํ™•์ธํ•ด์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

    ์‹คํŒจํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ

    ๋ฒˆํ˜ธ

    ์—ด ๋„ˆ๋น„ ์„ค์ •ํ•˜๊ธฐ

    ์—ด ๋„ˆ๋น„๋ฅผ ๊ณ ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹จ์œ„๋Š” ํ”ฝ์…€(pixel)์ž…๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋Œ€์ƒ ๊ฐœ์ฒด
    ๋ถ€๋ชจ ๊ฐœ์ฒด
    ๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด
    ์กฐํšŒ ๊ฐœ์ฒด

    ๊ด€๋ จ ๊ฐœ์ฒด ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

    ๋‹จ์ˆœํžˆ ๊ด€๋ จ๋œ ๊ฐœ์ฒด๋ฅผ ์กฐํšŒํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ํ•ด๋‹น ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ์‚ฌ์šฉํ•ด๋ณด์„ธ์š”. ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ๊ณผ ๊ด€๋ จ๋œ ๊ฐœ์ฒด๋ฅผ ์„ ํƒํ•˜๊ณ , ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’์„ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์— ๋งคํ•‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


    ๊ด€๋ จ ๊ฐœ์ฒด๋ฅผ ์ด์šฉํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ •

    ๋ฒˆํ˜ธ
    ํ•ญ๋ชฉ

    ์ œํ’ˆ ์˜ต์…˜ ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑํ•˜๊ธฐ

    ์ œํ’ˆ ์˜ต์…˜ ๋ฐ์ดํ„ฐ๋Š” ์ œํ’ˆ ๊ตฌ์„ฑ(SBLI__ProductFeature__c)๊ณผ ์ œํ’ˆ ์˜ต์…˜(SBLI__ProductOption__c) ๊ฐœ์ฒด๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๋‘ ๊ฐœ์ฒด๋Š” ์ œํ’ˆ(Product2)๋ฅผ ์ฐธ์กฐํ•˜๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค:

    ์ฃผ์š” ๋ฐ์ดํ„ฐ ๊ตฌ์„ฑ์€ ์ œํ’ˆ ์˜ต์…˜์„ ์ค‘์‹ฌ์œผ๋กœ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ์ œํ’ˆ ๊ตฌ์„ฑ์€ ํ•„์š”์— ๋”ฐ๋ผ ์ถ”๊ฐ€๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

    ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ์˜ ํ•„ํ„ฐ ๋ฐ ์ •๋ ฌ ์ˆœ์„œ ์„ค์ •ํ•˜๊ธฐ

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ์—์„œ ์‹คํ–‰ ์‹œ ์กฐ๊ฑด์— ๋งž๋Š” ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ์„ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์‹ถ๋‹ค๋ฉด, ํ•„ํ„ฐ์™€ ์ •๋ ฌ ์ˆœ์„œ๋ฅผ ์„ค์ •ํ•ด๋ณด์„ธ์š”. ์ด๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋งŒ ํ‘œ์‹œํ•˜๊ณ , ๋ถˆ๋Ÿฌ์˜ค๋Š” ์ˆœ์„œ๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ•„ํ„ฐ ์„ค์ •ํ•˜๊ธฐ

    ํŽธ์ง‘๊ธฐ ์‹คํ–‰ ์‹œ, ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•„ํ„ฐ๋งํ•˜์—ฌ ์›ํ•˜๋Š” ์กฐ๊ฑด์— ๋งž๋Š” ๋ฐ์ดํ„ฐ๋งŒ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„ํ„ฐ ์„ค์ • ๋ฐฉ์‹์€ SOQL์˜ WHERE์ ˆ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐํšŒ์—์„œ ๊ธฐํšŒ ์ œํ’ˆ์„ ์ผ๋ฐ˜ ์ œํ’ˆ๊ณผ ๊ตฌ๋… ์ œํ’ˆ์œผ๋กœ ๋‚˜๋ˆ ์„œ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๊ฐ ํŽธ์ง‘๊ธฐ์— ํ•„ํ„ฐ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ๋…ํ˜• ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ํŽธ์ง‘๊ธฐ์˜ ๊ฒฝ์šฐ, ๊ตฌ๋ถ„์„ ์œ„ํ•ด ๋งŒ๋“  ํ•„๋“œ์ธ ์œ ํ˜•(Type__c)์ด โ€˜๊ตฌ๋…โ€™์ธ ๊ธฐํšŒ ์ œํ’ˆ ๋ ˆ์ฝ”๋“œ๋งŒ ํŽธ์ง‘ ๋Œ€์ƒ์œผ๋กœ ํ•˜๋ ค๋ฉด, ํ•„ํ„ฐ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค:

    ๋˜ํ•œ, ์ง์ ‘ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ณ  ๋ฅผ ์ด์šฉํ•ด ํ•„ํ„ฐ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ์œ„ํ•œ ๊ฐ€์ƒ ์—ด ์ถ”๊ฐ€ํ•˜๊ธฐ

    ๋ฐ์ดํ„ฐ์†Œ์Šค์—์„œ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ์ž„์‹œ ๊ฐ’์„ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๊ฐ€์ƒ ์—ด์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์ƒ ์—ด์€ ๊ฐ€์ƒ ์—ด ์ถ”๊ฐ€ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ’ ์œ ํ˜•์œผ๋กœ ํ…์ŠคํŠธ, ์ˆซ์ž, ํ†ตํ™”๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

    ๊ฐ€์ƒ ์—ด์€ ๋ฐ์ดํ„ฐ์†Œ์Šค ์šฉ๋„๋กœ ์‚ฌ์šฉ๋˜๋ฏ€๋กœ, ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ฐ์ดํ„ฐ์†Œ์Šค ๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•˜์„ธ์š”.

    ๋ฐ์ดํ„ฐ์†Œ์Šค(DataSource)์— ์‚ฌ์šฉ๋œ ์˜ˆ์‹œ >

    Quantity

    ์ˆ˜๋Ÿ‰์„ ๋งคํ•‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ์ˆ˜๋Ÿ‰ ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ์ˆซ์ž

    Total Price

    ์˜ต์…˜์˜ ๋‹จ๊ฐ€์™€ ์ˆ˜๋Ÿ‰์„ ๊ณ„์‚ฐํ•˜์—ฌ ์‚ฐ์ถœ๋œ ์ด์•ก์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ๊ฐ’์„ ์ €์žฅํ•˜๋ ค๋ฉด ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ์ด์•ก ํ•„๋“œ๋ฅผ ์„ ํƒํ•˜์„ธ์š”.

    ๋งŒ์•ฝ ํŽธ์ง‘๊ธฐ์—์„œ ํ‘œ์‹œ ์šฉ๋„๋กœ๋งŒ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์— ์ถ”๊ฐ€ํ•œ ์—ด ์ค‘ ์ด์•ก์œผ๋กœ ์‚ฌ์šฉ๋œ ํ•„๋“œ๋ฅผ ์ง€์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    ํ†ตํ™”

    Discount (%)

    ํ• ์ธ์œจ(%)์„ ๋งคํ•‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ํ• ์ธ์œจ(%) ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ๋ฐฑ๋ถ„์œจ

    Discount (Amount)

    ํ• ์ธ๊ฐ€์„ ๋งคํ•‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ํ• ์ธ๊ฐ€ ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ํ†ตํ™”

    Description

    ์˜ต์…˜ ์„ค๋ช…์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋งคํ•‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ์„ค๋ช… ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ๊ธด ํ…์ŠคํŠธ ์˜์—ญ(1000)

    Option Record Id

    ์„ ํƒํ•œ ์ œํ’ˆ ์˜ต์…˜์˜ ๋ ˆ์ฝ”๋“œ ID์ž…๋‹ˆ๋‹ค. ํ•ด๋‹น ๊ฐ’์€ ๋ผ์ธ ์•„์ดํ…œ์— ์ €์žฅ๋˜๋ฉฐ, ํŽธ์ง‘๊ธฐ์—์„œ ๋ผ์ธ ์•„์ดํ…œ์„ ์กฐํšŒํ•  ๋•Œ ์ด ์˜ต์…˜ ๋ ˆ์ฝ”๋“œ ID๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ํ•„์š”ํ•œ ์˜ต์…˜ ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

    โ„น๏ธ ๊ธฐํšŒ ์ œํ’ˆ์—์„œ๋Š” Product Option(SBLI__ProductOption__c) ํ•„๋“œ๋ฅผ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ธฐํšŒ์— ๋Œ€ํ•œ ์Šคํƒ ๋‹ค๋“œ ์„ค์ •์„ ์ง„ํ–‰ํ•œ ๊ฒฝ์šฐ, ์ด ํ•„๋“œ๊ฐ€ ์ž๋™์œผ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ํ•„์š”์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ํ•„๋“œ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์กฐํšŒ(์ œํ’ˆ ์˜ต์…˜)

    โœ”

    Original Price

    ์ •๊ฐ€๋ฅผ ๋งคํ•‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ์ •๊ฐ€ ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ํŽธ์ง‘๊ธฐ์—์„œ ํ‘œ์‹œ ์šฉ๋„๋กœ๋งŒ ์‚ฌ์šฉํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์— ์ถ”๊ฐ€ํ•œ ์—ด ์ค‘ ์ •๊ฐ€๋กœ ์‚ฌ์šฉ๋œ ํ•„๋“œ๋ฅผ ์ง€์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    ํ†ตํ™”

    Unit Price

    ๋‹จ๊ฐ€๋ฅผ ๋งคํ•‘ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ, ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์ €์žฅํ•  ๋‹จ๊ฐ€ ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ํ†ตํ™”

    Option Record ID

    ์ œํ’ˆ ์˜ต์…˜ SBLI__ProductOption__c

    Original Price

    ์ •๊ฐ€ ListPrice

    Unit Price

    ๋‹จ๊ฐ€ UnitPrice

    Quantity

    ์ˆ˜๋Ÿ‰ Quantity

    Total Price

    ์ด์•ก TotalPrice

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    • ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    • ์กฐํšŒ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)

    ๊ธฐํšŒ

    ๊ธฐํšŒ

    Opportunity

    ๊ธฐํšŒ ์ œํ’ˆ

    OpportunityLineItem

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    PricebookEntry

    ๊ฒฌ์ 

    ๊ฒฌ์ 

    Quote

    ๊ฒฌ์ ์„œ ํ–‰ ์•„์ดํ…œ

    QuoteLineItem

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    PricebookEntry

    ์ฃผ๋ฌธ

    ์ฃผ๋ฌธ

    Order

    ์ฃผ๋ฌธ ์ œํ’ˆ

    OrderItem

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    PricebookEntry

    ๊ธฐํšŒ

    ๊ธฐํšŒ

    Opportunity

    ๊ธฐํšŒ ์ œํ’ˆ

    OpportunityLineItem

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    PricebookEntry

    ๊ฒฌ์ 

    ๊ฒฌ์ 

    Quote

    ๊ฒฌ์ ์„œ ํ–‰ ์•„์ดํ…œ

    QuoteLineItem

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    PricebookEntry

    ์ฃผ๋ฌธ

    ์ฃผ๋ฌธ

    Order

    ์ฃผ๋ฌธ ์ œํ’ˆ

    OrderItem

    ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ

    PricebookEntry

    ์„ค๋ช…
    1

    ์ด์ „ ๋ฒ„ํŠผ

    JSON ํŒŒ์ผ ์—…๋กœ๋“œ ํ™”๋ฉด์œผ๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ํŒŒ์ผ์„ ์„ ํƒํ•œ ๊ฒฝ์šฐ, ํ•ด๋‹น ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์ด์ „ ํ™”๋ฉด์œผ๋กœ ๋Œ์•„๊ฐ€ ์—…๋กœ๋“œ ๊ณผ์ •์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2

    ๊ฐ€์ ธ์˜จ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ •๋ณด

    ํ˜„์žฌ ์กฐ์ง์— ์ƒ์„ฑ๋˜๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธ๋  ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ •๋ณด๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

    3

    ํ˜„์žฌ ์กฐ์ง์˜ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ •๋ณด

    ํ˜„์žฌ ์กฐ์ง์— Migration Key๊ฐ€ ์—ฐ๊ฒฐ๋œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ์ด๋ฆ„์ด ์ž๋™์œผ๋กœ ํ‘œ์‹œ๋˜๋ฉฐ, ์—ฐ๊ฒฐ๋œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ๊ฒ€์ƒ‰์ฐฝ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค๋‹ค.

    • ๊ฒ€์ƒ‰์ฐฝ์—์„œ Migration Key๊ฐ€ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์€ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๋ฅผ ์กฐํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์กฐํšŒ๋œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜๋ฉด ํ•ด๋‹น ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์—…๋ฐ์ดํŠธ ๋˜๋ฉฐ, ์•„๋ฌด๊ฒƒ๋„ ์„ ํƒํ•˜์ง€ ์•Š์œผ๋ฉด๋ฉด ์ƒˆ๋กœ์šด ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

    4

    ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ฏธ๋ฆฌ๋ณด๊ธฐ

    ํ˜„์žฌ ์กฐ์ง์— ์žˆ๋Š” ๊ธฐ์กด ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ •์„ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒฝ์šฐ ๋ณ€๊ฒฝ๋˜๋Š” ํ•ญ๋ชฉ๋“ค์„ ํ™”๋ฉด์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    5

    ์ƒ์„ฑ ๋ฐ ์—…๋ฐ์ดํŠธ ๋ฒ„ํŠผ

    ๊ฐ€์ ธ์˜จ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ • ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ƒ์„ฑ ๋ฐ ์—…๋ฐ์ดํŠธ๊ฐ€ ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

    Migration Key ์ˆ˜๋™ ์—ฐ๊ฒฐํ•˜๊ธฐ

    ๋‹ค๋ฅธ ์กฐ์ง์—์„œ ํ˜„์žฌ ์กฐ์ง์œผ๋กœ ์ฒ˜์Œ ๊ฐ€์ ธ์˜ค๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ๊ฒฝ์šฐ Migration Key๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜จ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ์„ค์ • ์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ˜„์žฌ ์กฐ์ง์— ์กด์žฌํ•˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๋ฅผ ์—…๋ฐ์ดํŠธ ํ•˜๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ๊ฒ€์ƒ‰์„ ํ†ตํ•ด Migration Key๋ฅผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐ์กด ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์กฐํšŒ

    Migration Key๊ฐ€ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š๊ณ , ๊ฐ™์€ Object๋กœ ๋งŒ๋“ค์–ด์ง„ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๋งŒ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค.

    ์—…๋ฐ์ดํŠธํ•  ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ ํƒ

    ๋ณ€๊ฒฝ์‚ฌํ•ญ ๋ฏธ๋ฆฌ๋ณด๊ธฐ

    Migration Key๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด ์—…๋ฐ์ดํŠธ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ๊ฒฝ์šฐ ๊ธฐ์กด ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ •์—์„œ ๋ณ€๊ฒฝ๋˜๋Š” ํ•ญ๋ชฉ๋“ค์„ ํ™”๋ฉด์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์˜์—ญ ๋ฐ ๋ฒ„ํŠผ
    ์„ค๋ช…
    1

    ๋ชฉ๋ก ํ† ๊ธ€

    ์‹คํŒจํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ๋ชฉ๋ก์„ ์—ด๊ณ  ๋‹ซ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2

    ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ ํƒ

    ์‹คํŒจํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ค‘ ๋‹ค์‹œ JSON ํŒŒ์ผ๋กœ ๋‚ด๋ณด๋‚ผ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค๋‹ค.

    3

    ์‹คํŒจํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์ •๋ณด

    ์‹คํŒจํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    4

    ์‹คํŒจ ์‚ฌ์œ  ์š”์•ฝ

    ์‹คํŒจํ•œ ์‚ฌ์œ ๋ฅผ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ ์„ค์ • ๊ฐœ์ฒด๋ณ„๋กœ ์š”์•ฝํ•˜์—ฌ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

    5

    ์‹คํŒจ ์‚ฌ์œ  ์ƒ์„ธ

    ์‹คํŒจํ•œ ์‚ฌ์œ ๋ฅผ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ๋ณ„๋กœ ์ƒ์„ธํ•˜๊ฒŒ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    6

    ๐Ÿ”ป ์‹คํŒจ ์‚ฌ์œ  ์ƒ์„ธ

    ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์ด ์‹คํŒจํ•œ ์‚ฌ์œ ๋ฅผ ์ƒ์„ธํ•˜๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, Migration Key๋ฅผ ํ†ตํ•ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฐœ์ฒด๋ฅผ ์‰ฝ๊ฒŒ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์„ค๋ช…
    ํ•„์ˆ˜

    1

    ์†Œ์Šค ๊ฐœ์ฒด

    ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ฌ ๊ฐœ์ฒด๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    2

    ์„ค๋ช…

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์— ๋Œ€ํ•œ ์„ค๋ช…์„ ๊ธฐ์žฌํ•ฉ๋‹ˆ๋‹ค.

    3

    ํ•„ํ„ฐ ์กฐ๊ฑด

    ํ•„ํ„ฐ ์„ค์ • ๋ฐฉ๋ฒ•

    4

    ํ‰๊ฐ€ ์ด๋ฒคํŠธ

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ ์‹คํ–‰ ์‹œ์ ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐํ™” ์‹œ(On Initialization): ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ƒˆ๋กœ ์ถ”๊ฐ€๋  ๋•Œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ๋กœ๋”ฉ ์‹œ(On Loading): ๋ผ์ธ ์•„์ดํ…œ ํ™”๋ฉด์ด ๋กœ๋“œ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ๋ณ€๊ฒฝ ์‹œ(On Change): ๋ผ์ธ ์•„์ดํ…œ์˜ ํŠน์ • ํ•„๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    ์ž‘์—…

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์™€ ๋งคํ•‘ํ•˜๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค. ์ด ์ž‘์—…์„ ํ†ตํ•ด ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’์ด ์ง€์ •๋œ ํ•„๋“œ์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

    ๋ฒˆํ˜ธ
    ํ•ญ๋ชฉ
    ์„ค๋ช…
    ํ•„์ˆ˜

    1

    Key

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™๊ณผ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐ„ ๋ฐ์ดํ„ฐ ๋งคํ•‘ ์‹œ ์‚ฌ์šฉํ•  ๊ณ ์œ  ์‹๋ณ„ ๊ฐ’์ž…๋‹ˆ๋‹ค. Key๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’์ด ๋งคํ•‘๋  ๋Œ€์ƒ์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

    2

    ๊ทœ์น™ ํ•„๋“œ

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ ์†Œ์Šค ๊ฐœ์ฒด์—์„œ ๊ฐ€์ ธ์˜ฌ ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    3

    ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ

    ์˜ˆ์‹œ: ์ œํ’ˆ์˜ ๋‹จ๊ฐ€ ํ‘œ์‹œ

    ์ด ์˜ˆ์‹œ์—์„œ๋Š” ๊ธฐํšŒ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ๋ฅผ ์„ค์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    • ๋ถ€๋ชจ: ๊ธฐํšŒ(Opportunity)

    • ๋ผ์ธ ์•„์ดํ…œ: ๊ธฐํšŒ ์ œํ’ˆ(OpportunityLineItem)

    • ์กฐํšŒ: ์ œํ’ˆ(Product2)

    ์กฐํšŒ ๊ฐœ์ฒด๋ฅผ ์ œํ’ˆ(Product2)์œผ๋กœ ์„ค์ •ํ•œ ๊ฒฝ์šฐ, ์‚ฌ์šฉ์ž๋“ค์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋‹จ๊ฐ€(UnitPrice) ์ •๋ณด๋ฅผ ํ•จ๊ป˜ ํ‘œ์‹œํ•˜๊ณ  ์‹ถ์–ดํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์„ธ์ผ์ฆˆํฌ์Šค์—์„œ๋Š” ๋‹จ๊ฐ€ ์ •๋ณด๊ฐ€ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry) ๊ฐœ์ฒด์— ์ €์žฅ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ์€ ์ œํ’ˆ์˜ ํ•˜์œ„ ๊ฐœ์ฒด๋กœ, ๋‹จ๊ฐ€ ์ •๋ณด๋ฅผ ์ˆ˜์‹ ํ•„๋“œ๋กœ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ œํ’ˆ๊ณผ ์—ฐ๊ฒฐ๋œ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ๋ฐ์ดํ„ฐ๋ฅผ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ์ด์šฉํ•ด ์กฐํšŒํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

    ์„ค์ •

    1. ์กฐํšŒ ์„ ํƒ๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ์กฐํšŒ ํ•„๋“œ์— ํ†ตํ™” ์œ ํ˜•์˜ ๊ฐ€์ƒ ์—ด์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    2. ๋ฐ”๋กœ ํ•˜๋‹จ์— ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ โ€˜๊ด€๋ จ ๊ฐ์ฒด์—์„œ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐโ€™ ๋ ˆ์ด์•„์›ƒ์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์ถ”๊ฐ€๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    3. ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์—์„œ ์†Œ์Šค ๊ฐœ์ฒด(Source Object)๋ฅผ ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(PricebookEntry)๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

    4. ํ•„ํ„ฐ ์„ค์ •์—์„œ ๊ฐœ์ฒด ์กฐํšŒ ์กฐ๊ฑด์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

      • ํ™œ์„ฑํ™”

        1. ํ•„๋“œ: ํ™œ์„ฑ(IsActive)

        2. ์—ฐ์‚ฐ์ž: ๊ฐ™์Œ(equals)

        3. ๊ฐ’: ์ฐธ(true)

    5. ์ž‘์—…(Action) ์„ค์ •์—์„œ ๊ฐ ์ œํ’ˆ์— ํ•ด๋‹น๋˜๋Š” ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒฐํ•ฉํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค:

      • ๊ทœ์น™: Product2Id

      • ์กฐํšŒ: Id

    6. ๋‹จ๊ฐ€๋ฅผ ์ œํ’ˆ ๋ฐ์ดํ„ฐ์™€ ๊ฐ™์ด ํ‘œ์‹œํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์—…(Action)์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์กฐํšŒ ํ•„๋“œ()์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

      • ๊ทœ์น™: UnitPrice

      • ์กฐํšŒ: SBLI_Virtual1

    ์กฐํšŒ ํ•„๋“œ์—์„œ ๋‹จ๊ฐ€ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•  ๊ฐ€์ƒ ์—ด์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ • ํ™”๋ฉด์ž…๋‹ˆ๋‹ค.

    ๊ฒฐ๊ณผ

    ์กฐํšŒ ์„ ํƒ๊ธฐ์—์„œ ์ œํ’ˆ์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๋‹จ๊ฐ€ ์ •๋ณด๊ฐ€ ํ•จ๊ป˜ ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.37๋ถ€ํ„ฐ โ€˜๋ฐ์ดํ„ฐ์†Œ์Šค(Data Source)โ€™๊ฐ€ โ€˜๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(Business Rule)โ€™์œผ๋กœ ๋ช…์นญ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ์ œํ’ˆ ๊ตฌ์„ฑ

    ์ œํ’ˆ ์˜ต์…˜์„ ์นดํ…Œ๊ณ ๋ฆฌ๋ณ„๋กœ ๊ทธ๋ฃนํ™”ํ•ฉ๋‹ˆ๋‹ค.

    ๊ฐœ์ฒด ์ •๋ณด

    ๋ ˆ์ด๋ธ”

    ์ œํ’ˆ ๊ตฌ์„ฑ(Product Feature)

    API๋ช…

    SBLI__ProductFeature__c

    ํ•„๋“œ ์ •๋ณด

    ์†์„ฑ
    ํ•„๋“œ API๋ช…
    ์„ค๋ช…
    ํ•„์ˆ˜

    ์ˆœ์„œ

    SBLI__Order__c

    ์˜ต์…˜ ์„ ํƒ ํ™”๋ฉด์—์„œ ๋‚˜์—ด๋  ์ˆœ์„œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ๊ธฐ๋ณธ ์ œํ’ˆ

    SBLI__Product__c

    ํ•ด๋‹น ์˜ต์…˜์˜ ๊ตฌ์„ฑ ์ œํ’ˆ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค

    โœ”

    ์„ค๋ช…

    SBLI__Description__c

    ์ œํ’ˆ ๊ตฌ์„ฑ์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜

    ์˜ต์…˜์˜ ์ฃผ์š” ๊ฐœ์ฒด๋กœ, ์˜ต์…˜ ์ œํ’ˆ๊ณผ ๊ด€๋ จ ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

    ๊ฐœ์ฒด ์ •๋ณด

    ๋ ˆ์ด๋ธ”

    ์ œํ’ˆ ์˜ต์…˜(Product Option)

    API๋ช…

    SBLI__ProductOption__c

    ํ•„๋“œ ์ •๋ณด

    ์†์„ฑ
    ํ•„๋“œ API๋ช…
    ์„ค๋ช…
    ํ•„์ˆ˜

    ์ˆœ์„œ

    SBLI__Order__c

    ์˜ต์…˜ ์„ ํƒ ํ™”๋ฉด์—์„œ ๋‚˜์—ด๋  ์ˆœ์„œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ์ œํ’ˆ ๊ตฌ์„ฑ

    SBLI__Feature__c

    ์ œํ’ˆ ๊ตฌ์„ฑ์„ ์ฐธ์กฐํ•˜๋Š” ๊ด€๊ณ„ ํ•„๋“œ์ž…๋‹ˆ๋‹ค. ๊ตฌ์„ฑ์— ์˜ต์…˜์„ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด ํ•ด๋‹น ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ฐ๊ฒฐํ•˜์„ธ์š”.

    ๊ธฐ๋ณธ ์ œํ’ˆ

    SBLI__Product__c

    ๊ตฌ์„ฑ ์ œํ’ˆ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

    ์ œํ’ˆ ๊ตฌ์„ฑ

    ์ œํ’ˆ ์˜ต์…˜์„ ๊ทธ๋ฃนํ™”ํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ๋˜๋Š” ์„ ํƒ์ ์ธ ๊ฐœ์ฒด์ž…๋‹ˆ๋‹ค.

    ์ œํ’ˆ ์˜ต์…˜

    ์ฃผ์š” ๊ฐœ์ฒด๋กœ, ์˜ต์…˜ ์ œํ’ˆ๊ณผ ๊ด€๋ จ ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

    ๋ฒ„์ „ 1.39๋ถ€ํ„ฐ ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ, ๊ธฐ์กด์— ์„ค์น˜๋˜์–ด ์ œํ’ˆ ์˜ต์…˜ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉ ์ค‘์ธ ์กฐ์ง์—์„œ๋Š” ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ •๋ ฌ ์„ค์ •ํ•˜๊ธฐ

    ํŽธ์ง‘๊ธฐ ์‹คํ–‰ ์‹œ, ์ €์žฅ๋œ ๋ผ์ธ ์•„์ดํ…œ ๋ฐ์ดํ„ฐ๋ฅผ ์›ํ•˜๋Š” ์ˆœ์„œ๋กœ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ •๋ ฌ ์„ค์ • ๋ฐฉ์‹์€ SOQL์˜ ORDER BY์ ˆ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ผ์ธ ์•„์ดํ…œ์„ ์ตœ๊ทผ ์ƒ์„ฑ๋œ ์ˆœ์„œ๋กœ ์ •๋ ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด CreatedDate DESC๋กœ ์ž‘์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

    Type__c = '๊ตฌ๋…'
    ์ฟผ๋ฆฌ ๋งˆ๋ฒ•์‚ฌ(Query Wizard)
    SmallBuilder - Line-item Configurator, Actionable List and Document TemplateSalesforce AppExchange | Leading Enterprise Cloud Marketplace
    Logo

    ๋‚ด๋ณด๋‚ด๊ธฐ

    ์„ ํƒํ•œ ๋ผ์ธ ์•„์ดํ…œ ๊ตฌ์„ฑ๊ธฐ์˜ JSON ํŒŒ์ผ์„ ๋‚ด๋ ค๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๊ธฐํšŒ์™€ ๋™์ผํ•œ ๊ฐ€๊ฒฉ ๋ชฉ๋ก

    1. ํ•„๋“œ: ๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)

    2. ์—ฐ์‚ฐ์ž: ๊ฐ™์Œ(equals)

    3. ๊ฐ’: ๋ถ€๋ชจ/๊ฐ€๊ฒฉ ๋ชฉ๋ก(Pricebook2Id)

    ์ €์žฅ ์ „(Before Save): ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ €์žฅ๋˜๊ธฐ ์ „์— ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    โ— ๋ผ์ธ ์•„์ดํ…œ์—์„œ๋งŒ ์ œ๊ณต๋˜๋Š” ์„ค์ •์ž…๋‹ˆ๋‹ค.

    โœ”

    5

    ์ž‘์—…

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์œผ๋กœ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์™€ ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    ๋ฐ์ดํ„ฐ๋ฅผ ๋งคํ•‘ํ•  ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ์˜ ํ•„๋“œ๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    ๊ฐ€์ƒ ์—ด

    ๋‹ค์ค‘ ์„ ํƒ ๊ฐ€๋Šฅ

    SBLI__MultiSelectable__c

    ํ•ด๋‹น ๊ตฌ์„ฑ์—์„œ ์—ฌ๋Ÿฌ ์˜ต์…˜์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    ์˜ต์…˜ ์ œํ’ˆ

    SBLI__OptionalProduct__c

    ์˜ต์…˜์œผ๋กœ ์‚ฌ์šฉํ•  ์ œํ’ˆ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    ์ˆ˜๋Ÿ‰

    SBLI__Quantity__c

    ์˜ต์…˜์˜ ์ˆ˜๋Ÿ‰์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ 1๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

    ๋‹จ๊ฐ€

    SBLI__UnitPrice__c

    ์˜ต์…˜์˜ ๋‹จ๊ฐ€๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋‹จ๊ฐ€๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ๊ฐ€๊ฒฉ ๋ชฉ๋ก ํ•ญ๋ชฉ(Pricebook Entry)์—์„œ ๋‹จ๊ฐ€๋ฅผ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.

    ํ• ์ธ์œจ(%)

    SBLI__Discount__c

    ์˜ต์…˜์˜ ํ• ์ธ์œจ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ํ• ์ธ์œจ์ด ์„ค์ •๋œ ๊ฒฝ์šฐ, ์ด์•ก์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

    ํ• ์ธ๊ฐ€

    SBLI__DiscountAmount__c

    ์˜ต์…˜์˜ ํ• ์ธ ๊ธˆ์•ก์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ํ• ์ธ๊ฐ€๊ฐ€ ์„ค์ •๋œ ๊ฒฝ์šฐ, ์ด์•ก์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

    ํ•„์ˆ˜

    SBLI__Required__c

    ์˜ต์…˜ ์„ ํƒ ์‹œ ํ•„์ˆ˜๋กœ ์„ ํƒํ•ด์•ผ ํ•˜๋Š” ํ•ญ๋ชฉ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ์„ ํƒ๋จ

    SBLI__Selected__c

    ์˜ต์…˜ ์„ ํƒ ์‹œ ๊ธฐ๋ณธ์ ์œผ๋กœ ์„ ํƒ๋œ ์ƒํƒœ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

    ํฌํ•จ๋จ

    SBLI__Included__c

    ์˜ต์…˜์ด ํฌํ•จ๋œ ์ƒํƒœ๋กœ ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ํฌํ•จ๋œ ์˜ต์…˜์€ ๊ธˆ์•ก์ด ๋‹จ๊ฐ€ ๋ฐ ์ด์•ก์— ๋ฐ˜์˜๋˜์ง€ ์•Š์œผ๋ฉฐ, ํŽธ์ง‘๊ธฐ์—์„œ Included๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

    ๋‹จ๊ฐ€ ํŽธ์ง‘ ๊ฐ€๋Šฅ

    SBLI__PriceEditable__c

    ์˜ต์…˜ ๋‹จ๊ฐ€๋ฅผ ์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ต์…˜ ๋‹จ๊ฐ€๋Š” ์ˆ˜์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

    ์ˆ˜๋Ÿ‰ ํŽธ์ง‘ ๊ฐ€๋Šฅ

    SBLI__QuantityEditable__c

    ์˜ต์…˜ ์ˆ˜๋Ÿ‰์„ ์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ—ˆ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ต์…˜ ์ˆ˜๋Ÿ‰์€ ์ˆ˜์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

    ์ตœ์†Œ ์ˆ˜๋Ÿ‰

    SBLI__MinQuantity__c

    ์˜ต์…˜ ์ˆ˜์ƒน ์ˆ˜์ •์ด ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ, ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„์—์„œ ์„ค์ •ํ•  ์ตœ์†Œ ์ˆ˜๋Ÿ‰์ž…๋‹ˆ๋‹ค.

    ์ตœ๋Œ€ ์ˆ˜๋Ÿ‰

    SBLI__MaxQuantity__c

    ์˜ต์…˜ ์ˆ˜์ƒน ์ˆ˜์ •์ด ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ, ์˜ต์…˜ ์„ ํƒ ๋‹จ๊ณ„์—์„œ ์„ค์ •ํ•  ์ตœ๋Œ€ ์ˆ˜๋Ÿ‰์ž…๋‹ˆ๋‹ค.

    ์„ค๋ช…

    SBLI__Description__c

    ์˜ต์…˜์— ๋Œ€ํ•œ ์ƒ์„ธ ์„ค๋ช…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    https://youtu.be/3zVGVlJR7S8youtu.be

    Apex ํด๋ž˜์Šค๋ฅผ ํ™œ์šฉํ•ด ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

    ๋ฒ„์ „ 1.37๋ถ€ํ„ฐ โ€˜๋ฐ์ดํ„ฐ์†Œ์Šค(Data Source)โ€™๊ฐ€ โ€˜๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™(Business Rule)โ€™์œผ๋กœ ๋ช…์นญ์ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ์™ธ๋ถ€ API ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๊ฑฐ๋‚˜, ๋ฐ์ดํ„ฐ ์กฐํšŒ ๋ฐ ๊ฒฐํ•ฉ ์‹œ ๋ณต์žกํ•œ ๋กœ์ง์ด ์š”๊ตฌ๋˜๋Š” ๊ฒฝ์šฐ์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ์„ค์ •ํ•˜๋ ค๋ฉด Apex ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด ๊ตฌํ˜„ํ•˜๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋” ์ž์œ ๋กญ๊ฒŒ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.


    ์„ค์ • ๊ณผ์ •

    1

    Apex ํด๋ž˜์Šค ์ž‘์„ฑ

    Apex ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•  ๋•Œ, SmallBuilder์—์„œ ์ œ๊ณตํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    2

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ •

    Apex ํด๋ž˜์Šค ๊ตฌํ˜„์ด ์™„๋ฃŒ๋˜๋ฉด, ๋นŒ๋”์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ •์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

    STEP 1: ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์— ์‚ฌ์šฉํ•  Apex ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ •์—์„œ ์‚ฌ์šฉํ•  Apex ํด๋ž˜์Šค๋ฅผ ์ž‘์„ฑํ•˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ SBLI.DataSourceService.Fetchable ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์ด ์ธํ„ฐํŽ˜์ด์Šค์—๋Š” execute ๋ฉ”์„œ๋“œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ํ•ด๋‹น ๋ฉ”์„œ๋“œ์— ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ๋กœ์ง ๊ตฌํ˜„ ํ›„ ์ฒ˜๋ฆฌ๋œ ๋ฐ์ดํ„ฐ์™€ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ๊ฐ„์˜ ๋งคํ•‘ ์ •๋ณด๋ฅผ ๋‹ด์€ SBLI.DataSourceService.Result ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ ์ฝ”๋“œ

    ํ•ด๋‹น ์˜ˆ์‹œ ์ฝ”๋“œ๋Š” ์™ธ๋ถ€ API๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ œํ’ˆ ์ฝ”๋“œ๋ณ„ ์žฌ๊ณ  ์ˆ˜๋Ÿ‰์„ ๊ฐ€์ ธ์˜จ ํ›„, ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ์˜ ์žฌ๊ณ  ํ•„๋“œ(Inventory__c)์— ๋งคํ•‘ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

    SBLI.DataSourceService.Fetchable ์ธํ„ฐํŽ˜์ด์Šค๋Š” ํŒจํ‚ค์ง€์—์„œ ์ œ๊ณต๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์ด๋ฏ€๋กœ, ํŒจํ‚ค์ง€ ์™ธ๋ถ€์—์„œ ์ ‘๊ทผํ•˜๋ ค๋ฉด Apex ํด๋ž˜์Šค์™€ ์ œ๊ณต๋˜๋Š” ๋ฉ”์„œ๋“œ ๋ชจ๋‘ global๋กœ ์„ ์–ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

    1

    ๋ถ€๋ชจ ๋ ˆ์ฝ”๋“œ ๋ฐ ์กฐํšŒ ๋ ˆ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ

    • params.getParentRecord(): ๋ถ€๋ชจ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

    SBLI.DataSourceService.Parameter

    ๋นŒ๋”์—์„œ ์„ค์ •ํ•œ ๋ถ€๋ชจ์™€ ์กฐํšŒ ํŒŒ๋ผ๋ฏธํ„ฐ ์ •๋ณด๋ฅผ ๊ฐ€์ง„ ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ ์ฝ”๋“œ

    Methods

    SObject getParentRecord()

    ๋ถ€๋ชจ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋นŒ๋”์—์„œ ์ถ”๊ฐ€ํ•œ ๋ถ€๋ชจ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ, ๊ฐ’์€ ๋น„์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    List<SObject> getLookupRecords()

    ์กฐํšŒ ๋ ˆ์ฝ”๋“œ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋นŒ๋”์—์„œ ์ถ”๊ฐ€ํ•œ ์กฐํšŒ ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ, ๊ฐ’์€ ๋น„์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

    SBLI.DataSourceService.Result

    ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ„์˜ ๋ชจ๋“  ๋งคํ•‘ ์ •๋ณด๋ฅผ ๋‹ด์•„ ํŽธ์ง‘๊ธฐ๋กœ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค. ๋งคํ•‘ ์ •๋ณด๋Š” ๊ฐ์ฒด์— ์ €์žฅํ•œ ๋’ค, SBLI.DataSourceService.Result ๊ฐ์ฒด์— ์ถ”๊ฐ€ํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ ์ฝ”๋“œ

    Methods

    addAction(SBLI.DataSourceService.Action action)

    ๋งคํ•‘ ์ •๋ณด๊ฐ€ ๋‹ด๊ธด Action ๊ฐ์ฒด๋ฅผ Result ๊ฐ์ฒด์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    ๋งค๊ฐœ๋ณ€์ˆ˜
    ์œ ํ˜•
    ๊ฐ’

    SBLI.DataSourceService.Action

    ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’์„ ๋งคํ•‘ํ•œ ์ •๋ณด๋ฅผ ๋‹ด์€ ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค.

    ์˜ˆ์‹œ ์ฝ”๋“œ

    Methods

    setKeyValue(Object keyValue)

    ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ์˜ Key์™€ ์ผ์น˜ํ•˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ Key ๊ฐ’์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    ๋งค๊ฐœ๋ณ€์ˆ˜
    ์œ ํ˜•
    ๊ฐ’

    putSourceToTargetField(Object sourceValue, String targetFieldApiName)

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’์„ ์›ํ•˜๋Š” ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ์— ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.

    ๋งค๊ฐœ๋ณ€์ˆ˜
    ์œ ํ˜•
    ๊ฐ’

    STEP 2: ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์„ค์ •

    ๋ผ์ธ ์•„์ดํ…œ ํŽธ์ง‘๊ธฐ ์„ค์ • ๋‹จ๊ณ„์—์„œ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ โ€˜Apex ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐโ€™ ๋ ˆ์ด์•„์›ƒ์—์„œ โ€˜๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ์ถ”๊ฐ€โ€™๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

    Apex ํด๋ž˜์Šค๋ฅผ ์„ ํƒํ•œ ํ›„, ํด๋ž˜์Šค์—์„œ ๋ถ€๋ชจ์™€ ์กฐํšŒ ์ •๋ณด๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ•  ํ•„๋“œ๋“ค์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    ๋ฐ์ดํ„ฐ์†Œ์Šค๋ฅผ ์„ค์ •ํ•˜๊ธฐ ์ „์— ํ•˜์„ธ์š”.

    ๋ฒˆํ˜ธ
    ํ•ญ๋ชฉ
    ์„ค๋ช…
    ํ•„์ˆ˜

    STEP 3: ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ํ™œ์„ฑํ™”

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ™œ์„ฑํ™”๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์ด ๋น„ํ™œ์„ฑํ™”๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ, ์„ค์ •๋œ ๊ทœ์น™์€ ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์€ ์ตœ์ดˆ ์ถ”๊ฐ€ ์‹œ ์ž๋™์œผ๋กœ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.

    params.getLookupRecords(): ์กฐํšŒ ๊ฐœ์ฒด์˜ ๋ ˆ์ฝ”๋“œ ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

    SBLI.DataSourceService.Parameter ์ฐธ๊ณ  >

    2

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’ ์ค€๋น„

    • ์™ธ๋ถ€ API ์„œ๋ฒ„์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์žฌ๊ณ  ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์˜จ๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

    • ์˜ˆ์‹œ์—์„œ๋Š” ์ œํ’ˆ ์ฝ”๋“œ(ProductCode)๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์žฌ๊ณ  ์ •๋ณด๋ฅผ ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.

    3

    ๊ฒฐ๊ณผ ์ƒ์„ฑ

    • SBLI.DataSourceService.Action ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’(์žฌ๊ณ  ์ •๋ณด)๊ณผ ์กฐํšŒ ํ•„๋“œ(Inventory__c)๋ฅผ ๋งคํ•‘ํ•ฉ๋‹ˆ๋‹ค.

    • ์ƒ์„ฑ๋œ Action ๊ฐ์ฒด๋ฅผ ์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    4

    ๋ฐ˜ํ™˜

    ๋งคํ•‘๋œ ๊ฒฐ๊ณผ๋ฅผ ๋‹ด์€ Result ๊ฐ์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•˜์—ฌ, ํŽธ์ง‘๊ธฐ์— ๋งคํ•‘ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    5

    ์ž‘์—… ํ‚ค

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ํ†ตํ•ด ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ์— ๋งคํ•‘ํ•˜๊ธฐ ์œ„ํ•ด Key ํ•„๋“œ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    Key ํ•„๋“œ๋Š” ์กฐํšŒ ๊ฐœ์ฒด์˜ ํ•„๋“œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ’ ๋ผ์ธ ์•„์ดํ…œ์—์„œ ์กฐํšŒ ๊ฐœ์ฒด์˜ ํ•„๋“œ๋ฅผ Key๋กœ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š”, ๋ผ์ธ ์•„์ดํ…œ์ด ์ €์žฅ๋˜์ง€ ์•Š์€ ๋ ˆ์ฝ”๋“œ์ผ ์ˆ˜๋„ ์žˆ์–ด ์œ ์ผํ•œ Key ๊ฐ’์„ ํŒ๋‹จํ•˜๊ธฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

    โœ”

    action

    SBLI.DataSourceService.Action

    ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’์„ ๋งคํ•‘ํ•œ ์ •๋ณด๋ฅผ ๋‹ด์€ ๊ฐ์ฒด์ž…๋‹ˆ๋‹ค.

    keyValue

    Object

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ Key ๊ฐ’์ž…๋‹ˆ๋‹ค.

    sourceValue

    Object

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’์ž…๋‹ˆ๋‹ค.

    targetFieldApiName

    String

    ์กฐํšŒ ๋˜๋Š” ๋ผ์ธ ์•„์ดํ…œ์˜ ํ•„๋“œ API๋ช…์ž…๋‹ˆ๋‹ค.

    1

    Apex Class

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์— ์‚ฌ์šฉํ•  Apex ํด๋ž˜์Šค๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

    โœ”

    3

    ํŒŒ๋ผ๋ฏธํ„ฐ

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ๊ตฌํ˜„ํ•œ Apex ํด๋ž˜์Šค์—์„œ ๋ถ€๋ชจ ๋˜๋Š” ์กฐํšŒ ๊ฐœ์ฒด์˜ ํ•„๋“œ ๊ฐ’์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ, ํ•ด๋‹น ํ•„๋“œ๋ฅผ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    4

    ํ‰๊ฐ€ ์ด๋ฒคํŠธ

    SBLI.DataSourceService.Action
    Apex ํด๋ž˜์Šค๋ฅผ ๋จผ์ € ์ž‘์„ฑ

    ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์˜ ์‹คํ–‰ ์‹œ์ ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

    • ์ดˆ๊ธฐํ™” ์‹œ(On Initialization): ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ƒˆ๋กœ ์ถ”๊ฐ€๋  ๋•Œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ๋กœ๋”ฉ ์‹œ(On Loading): ๋ผ์ธ ์•„์ดํ…œ ํ™”๋ฉด์ด ๋กœ๋“œ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    • ๋ณ€๊ฒฝ ์‹œ(On Change): ๋ผ์ธ ์•„์ดํ…œ์˜ ํŠน์ • ํ•„๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    global class DataSourceInventory implements SBLI.DataSourceService.Fetchable {
        global SBLI.DataSourceService.Result execute(SBLI.DataSourceService.Parameter params) {
            // ๋ถ€๋ชจ ๋ ˆ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ
            SObject parentRecord = params.getParentRecord();
    
            // ์กฐํšŒ ๊ฐœ์ฒด ๋ ˆ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ
            List<SObject> lookupRecords = params.getLookupRecords();
            
            // ์™ธ๋ถ€ API๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์žฌ๊ณ  ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ
            // ํ‚ค: ์ œํ’ˆ ์ฝ”๋“œ, ๊ฐ’: ์žฌ๊ณ  ์ˆ˜๋Ÿ‰
            Map<String, Integer> inventoryData = new Map<String, Integer>(); 
            inventoryData.put('Product001', 10);
            inventoryData.put('Product002', 20);
    
            // ๊ฒฐ๊ณผ ๊ฐ์ฒด ์ƒ์„ฑ
            SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();
    
            // ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์™€ ๊ฒฐ๊ณผ ๊ฐ’ ๋งคํ•‘
            for (String productCode : inventoryData.keySet()) {
                SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
                action.setKeyValue(productCode); // ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ์™€ ๋งคํ•‘ํ•  Key ๊ฐ’ ์„ค์ •
                action.putSourceToTargetField(
                    inventoryData.get(productCode), // ๊ฒฐ๊ณผ ๊ฐ’: ์žฌ๊ณ  ์ •๋ณด
                    'Inventory__c'                 // ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ API๋ช…
                );
                result.addAction(action); // Action ์ถ”๊ฐ€
            }
            
            return result; // ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜
        }
    }
    DataSourceInventory.cls
    global SBLI.DataSourceService.Result execute(SBLI.DataSourceService.Parameter params) {
        SObject parentRecord = params.getParentRecord();
        List<SObject> lookupRecords = params.getLookupRecords();
        ...
    }
    DataSourceInventory.cls
    SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();
    for(String productCode : inventoryData.keySet()) {
        // SBLI.DataSourceService.Action ๊ฐ์ฒด์— ๋งคํ•‘ ์ •๋ณด ์ €์žฅ
        SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
        action.setKeyValue(productCode);
        action.putSourceToTargetField(
            inventoryData.get(productCode),
            'Inventory__c'
        );
        result.addAction(action); // ๋งคํ•‘ ์ •๋ณด๊ฐ€ ๋‹ด๊ธด Action์„ Result์— ์ถ”๊ฐ€
    }
    return result;
    DataSourceInventory.cls
    SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();
    // ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์—์„œ ๊ฐ ์ œํ’ˆ์ฝ”๋“œ์™€ ์žฌ๊ณ  ์ •๋ณด๋ฅผ ๋ฐ˜๋ณต ์ฒ˜๋ฆฌ
    for(String productCode : inventoryData.keySet()) {
        SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
        // ์ œํ’ˆ์ฝ”๋“œ๋ฅผ Key ๊ฐ’์œผ๋กœ ์„ค์ •ํ•˜์—ฌ ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ๊ณผ ๋งคํ•‘
        action.setKeyValue(productCode);
        
        // ์žฌ๊ณ  ์ •๋ณด๋ฅผ ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ์˜ Inventory__c ํ•„๋“œ์— ๋งคํ•‘ 
        action.putSourceToTargetField(
            inventoryData.get(productCode),    // ๋ฐ์ดํ„ฐ์†Œ์Šค ๊ฐ’: ์žฌ๊ณ 
            'Inventory__c'                                // ํ•„๋“œ API๋ช…
        );
        result.addAction(action); // ๋งคํ•‘ ์ •๋ณด ์ถ”๊ฐ€
    }
    return result; // ์ตœ์ข… ๊ฒฐ๊ณผ ๋ฐ˜ํ™˜
    // ๋ถ€๋ชจ ๋ ˆ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ
    SObject parentRecord = params.getParentRecord();
    // ์กฐํšŒ ๊ฐœ์ฒด ๋ ˆ์ฝ”๋“œ ๊ฐ€์ ธ์˜ค๊ธฐ
    List<SObject> lookupRecords = params.getLookupRecords();
    ์ €์žฅ ์ „(Before Save): ๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ๊ฐ€ ์ €์žฅ๋˜๊ธฐ ์ „์— ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

    โ— ๋ผ์ธ ์•„์ดํ…œ์—์„œ๋งŒ ์ œ๊ณต๋˜๋Š” ์„ค์ •์ž…๋‹ˆ๋‹ค.

    SBLI.DataSourceService.Result
    Map<String, Integer> inventoryData = new Map<String, Integer>(); 
    inventoryData.put('Product001', 10);
    inventoryData.put('Product002', 20);
    // ๊ฒฐ๊ณผ ๊ฐ์ฒด ์ƒ์„ฑ
    SBLI.DataSourceService.Result result = new SBLI.DataSourceService.Result();
    
    // ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ๊ฐœ์ฒด์™€ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์œผ๋กœ ๊ฐ€์ ธ์˜จ ๊ฐ’ ๋งคํ•‘
    for (String productCode : inventoryData.keySet()) {
        SBLI.DataSourceService.Action action = new SBLI.DataSourceService.Action();
        action.setKeyValue(productCode); // ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ๋ ˆ์ฝ”๋“œ์™€ ๋งคํ•‘ํ•  Key ๊ฐ’ ์„ค์ •
        action.putSourceToTargetField(
            inventoryData.get(productCode), // ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™ ๊ฐ’: ์žฌ๊ณ  ์ •๋ณด
            'Inventory__c'                 // ์กฐํšŒ/๋ผ์ธ ์•„์ดํ…œ ํ•„๋“œ API๋ช…
        );
        result.addAction(action); // Action ์ถ”๊ฐ€
    }