pbi-cli/assets/report-workflow.svg

125 lines
8.1 KiB
XML
Raw Permalink Normal View History

<svg xmlns="http://www.w3.org/2000/svg" width="850" height="280" viewBox="0 0 850 280">
<defs>
<linearGradient id="rw-glow" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" stop-color="#06d6a0" stop-opacity="0"/>
<stop offset="50%" stop-color="#06d6a0" stop-opacity="0.12"/>
<stop offset="100%" stop-color="#06d6a0" stop-opacity="0"/>
</linearGradient>
</defs>
<rect width="100%" height="100%" fill="#0d1117" rx="8"/>
<!-- Title -->
<text x="425" y="28" font-family="'Segoe UI', Arial, sans-serif" font-size="20" fill="#06d6a0" text-anchor="middle" font-weight="bold">Build a Report in 6 Steps</text>
<text x="425" y="48" font-family="'Segoe UI', Arial, sans-serif" font-size="13" fill="#8b949e" text-anchor="middle">From empty folder to a complete, themed report with visuals and filters</text>
<rect x="60" y="58" width="730" height="1" fill="url(#rw-glow)"/>
<!-- 6 steps in a horizontal flow -->
<!-- Step width=110, arrow=22, total=6*110+5*22=770, start=(850-770)/2=40 -->
<!-- Step 1: Scaffold -->
<rect x="40" y="75" width="110" height="120" rx="8" fill="#161b22" stroke="#58a6ff" stroke-width="1.5"/>
<circle cx="95" cy="92" r="11" fill="#58a6ff"/>
<text x="95" y="97" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#0d1117" text-anchor="middle" font-weight="bold">1</text>
<text x="95" y="118" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#58a6ff" text-anchor="middle" font-weight="bold">Scaffold</text>
<!-- Folder icon -->
<g transform="translate(72, 128)">
<rect x="0" y="6" width="40" height="28" rx="3" fill="none" stroke="#58a6ff" stroke-width="1.2"/>
<rect x="0" y="2" width="18" height="8" rx="2" fill="none" stroke="#58a6ff" stroke-width="1"/>
</g>
<text x="95" y="175" font-family="'Courier New', Courier, monospace" font-size="9" fill="#8b949e" text-anchor="middle">report create</text>
<!-- Arrow -->
<line x1="154" y1="135" x2="168" y2="135" stroke="#F2C811" stroke-width="2"/>
<polygon points="172,135 166,130 166,140" fill="#F2C811"/>
<!-- Step 2: Add Pages -->
<rect x="176" y="75" width="110" height="120" rx="8" fill="#161b22" stroke="#06d6a0" stroke-width="1.5"/>
<circle cx="231" cy="92" r="11" fill="#06d6a0"/>
<text x="231" y="97" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#0d1117" text-anchor="middle" font-weight="bold">2</text>
<text x="231" y="118" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#06d6a0" text-anchor="middle" font-weight="bold">Add Pages</text>
<!-- Pages icon -->
<g transform="translate(210, 126)">
<rect x="6" y="0" width="30" height="22" rx="2" fill="none" stroke="#06d6a0" stroke-width="1" opacity="0.4"/>
<rect x="3" y="4" width="30" height="22" rx="2" fill="none" stroke="#06d6a0" stroke-width="1" opacity="0.7"/>
<rect x="0" y="8" width="30" height="22" rx="2" fill="none" stroke="#06d6a0" stroke-width="1.2"/>
</g>
<text x="231" y="175" font-family="'Courier New', Courier, monospace" font-size="9" fill="#8b949e" text-anchor="middle">report add-page</text>
<!-- Arrow -->
<line x1="290" y1="135" x2="304" y2="135" stroke="#F2C811" stroke-width="2"/>
<polygon points="308,135 302,130 302,140" fill="#F2C811"/>
<!-- Step 3: Add Visuals -->
<rect x="312" y="75" width="110" height="120" rx="8" fill="#161b22" stroke="#d97757" stroke-width="1.5"/>
<circle cx="367" cy="92" r="11" fill="#d97757"/>
<text x="367" y="97" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#0d1117" text-anchor="middle" font-weight="bold">3</text>
<text x="367" y="118" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#d97757" text-anchor="middle" font-weight="bold">Add Visuals</text>
<!-- Chart icon -->
<g transform="translate(348, 128)">
<rect x="0" y="18" width="8" height="16" rx="1" fill="#d97757" opacity="0.5"/>
<rect x="12" y="8" width="8" height="26" rx="1" fill="#d97757" opacity="0.7"/>
<rect x="24" y="0" width="8" height="34" rx="1" fill="#d97757"/>
</g>
<text x="367" y="175" font-family="'Courier New', Courier, monospace" font-size="9" fill="#8b949e" text-anchor="middle">visual add</text>
<!-- Arrow -->
<line x1="426" y1="135" x2="440" y2="135" stroke="#F2C811" stroke-width="2"/>
<polygon points="444,135 438,130 438,140" fill="#F2C811"/>
<!-- Step 4: Bind Data -->
<rect x="448" y="75" width="110" height="120" rx="8" fill="#161b22" stroke="#F2C811" stroke-width="1.5"/>
<circle cx="503" cy="92" r="11" fill="#F2C811"/>
<text x="503" y="97" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#0d1117" text-anchor="middle" font-weight="bold">4</text>
<text x="503" y="118" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#F2C811" text-anchor="middle" font-weight="bold">Bind Data</text>
<!-- Link/bind icon -->
<g transform="translate(484, 128)">
<rect x="0" y="6" width="16" height="20" rx="2" fill="none" stroke="#8b949e" stroke-width="1"/>
<line x1="20" y1="16" x2="30" y2="16" stroke="#F2C811" stroke-width="2"/>
<polygon points="32,16 28,12 28,20" fill="#F2C811"/>
<rect x="34" y="4" width="8" height="24" rx="1" fill="#d97757" opacity="0.6"/>
</g>
<text x="503" y="175" font-family="'Courier New', Courier, monospace" font-size="9" fill="#8b949e" text-anchor="middle">visual bind</text>
<!-- Arrow -->
<line x1="562" y1="135" x2="576" y2="135" stroke="#F2C811" stroke-width="2"/>
<polygon points="580,135 574,130 574,140" fill="#F2C811"/>
<!-- Step 5: Theme -->
<rect x="584" y="75" width="110" height="120" rx="8" fill="#161b22" stroke="#7b61ff" stroke-width="1.5"/>
<circle cx="639" cy="92" r="11" fill="#7b61ff"/>
<text x="639" y="97" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#0d1117" text-anchor="middle" font-weight="bold">5</text>
<text x="639" y="118" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#7b61ff" text-anchor="middle" font-weight="bold">Apply Theme</text>
<!-- Palette dots -->
<g transform="translate(616, 132)">
<circle cx="8" cy="10" r="6" fill="#0078D4"/>
<circle cx="24" cy="10" r="6" fill="#FFB900"/>
<circle cx="40" cy="10" r="6" fill="#D83B01"/>
</g>
<text x="639" y="175" font-family="'Courier New', Courier, monospace" font-size="9" fill="#8b949e" text-anchor="middle">set-theme</text>
<!-- Arrow -->
<line x1="698" y1="135" x2="712" y2="135" stroke="#F2C811" stroke-width="2"/>
<polygon points="716,135 710,130 710,140" fill="#F2C811"/>
<!-- Step 6: Validate -->
<rect x="720" y="75" width="110" height="120" rx="8" fill="#161b22" stroke="#06d6a0" stroke-width="1.5"/>
<circle cx="775" cy="92" r="11" fill="#06d6a0"/>
<text x="775" y="97" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#0d1117" text-anchor="middle" font-weight="bold">6</text>
<text x="775" y="118" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#06d6a0" text-anchor="middle" font-weight="bold">Validate</text>
<!-- Checkmark icon -->
<g transform="translate(757, 128)">
<circle cx="18" cy="16" r="16" fill="none" stroke="#06d6a0" stroke-width="1.5"/>
<polyline points="8,16 15,24 28,10" fill="none" stroke="#06d6a0" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
</g>
<text x="775" y="175" font-family="'Courier New', Courier, monospace" font-size="9" fill="#8b949e" text-anchor="middle">validate</text>
<!-- Bottom: full command example -->
<rect x="40" y="210" width="770" height="50" rx="8" fill="#161b22" stroke="#06d6a0" stroke-width="1" stroke-opacity="0.3"/>
<text x="425" y="233" font-family="'Courier New', Courier, monospace" font-size="12" fill="#58a6ff" text-anchor="middle">pbi report create . --name "Sales" &amp;&amp; pbi report add-page --display-name "Overview"</text>
<text x="425" y="250" font-family="'Courier New', Courier, monospace" font-size="12" fill="#58a6ff" text-anchor="middle">pbi visual add --type bar --page overview &amp;&amp; pbi visual bind --category --value</text>
<text x="425" y="275" font-family="'Segoe UI', Arial, sans-serif" font-size="12" fill="#8b949e" text-anchor="middle">All steps work offline on PBIR files. Desktop auto-syncs when it's open.</text>
</svg>