import{b as d,_ as b,a as h}from"./rule-column-dictionary-420be167.js";import{_ as g,r as m,o as x,c as C,a as e,d as t,e as o,f as s,b as A}from"./app-6440dfe3.js";const f="/BMSCTX/assets/ToolBox-222eb11a.png",v="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAIAAABKoV4MAAAACXBIWXMAAB2HAAAdhwGP5fFlAAABlElEQVRYw+2YIVPDMBTH/0maHVSvX2F3SBR6oNEDg0HsA4ADi0NzGAyGTSA4JHegERyDm5qBu0pEbwrXh+iuSZul6zi4JbCn0tf0vf7yXpKXsDiOsTjhWKgs3f9f94GpOtxb/yVnp5fPztNn0rv/KGk67QhA/+Kkwlxn/whA/6H87c5mBGA0GgFotVrO06fJQHtiqvnUrTTYBJAmLwBAVPrUh8wvEBsEnbPmbKs1uF2nz4YgQyAAV9d3GpOORhaN2dMb+gkSAQAx1bYRVw+Bb/RCGjNB5QFpfFl6kNGTQDPT3z16zgkAxEqu2d3e+Ibp3u2jssnIE/qAEQAWhKWQmvuYdd9rRwAgwlwjuS+xlwEAMBHm2TuR4fGcthW9EKkvseeplvnavB0P5zLNxGq+OEjhS+wbggCAN8pr1vi1xk6vxZhLzaYvsZdi+gr1mbxNrwq17pypiq/gRniz6ln+dPBuyd4aNZ10k56ZtxvnB2tV5Y9FX6jrVGFQeLvVvXHrlMNsdzvZeexnRed2m355ufLn3X8BTs1nCXSp+VYAAAAASUVORK5CYII=",u="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAvCAIAAAAabM+/AAAACXBIWXMAAB2HAAAdhwGP5fFlAAAC4UlEQVRYw+3YS2jdRRQG8N/c3LzapIK1rVpp3US684FK0IVFaRfiXrIT3FUQu4hFNyK4FHFlcSkuBbtzU9xUu6q4iJWWQi1JJKmJaW5e/3v/rxkXl97gC9FNcm1mMQwzc+bjO+fMN8MJeZ7budZcWlraQfiGHW178Hvw9yZ88z/YXP7hNhZXCiysJ4wIKEPEYPojpSBi4tgITj7xYJ+zX1jpYP3m13hv+tw/7t/MS3zy5QxO9n3sW+sNvD19DtcX1vHt7DTuO/ArsqLE3NJBPPfwB5g8cRRDjfC/yPxq+SIqT6GKEWNjSxgdvB9Rjjg0i19WM8QUUc1dBK/3OfvmoVNICTayAqudDuq0hc0yx52sg1U5pIDmsVO7PvbZjbMYyUqEv7H5ZuBNvNVl34mYXZhAHL6KzTJDa/U4Hjsy3Fea37q9iGemLiGEAKm7kiAETJ6/jBih1a7x+JF38OTsWfx4Yw6tFz5EVVa9A/oh88fGmxAL5LfPoy4GoHEAIYxDOowgYebnN1CWJa4UBYqHBlFcfbU3P/X8lW0n7urYD3UqpFigLoaQYkJsz6G9fAuvhAwrn9/CmT8fOQBGm72+GUqkR07vevapUSNWbWwtLmHrp++QqhKhOYwTU5+hqhLyvHRXIrp3odGA0NyP9hcv4dMLM5j4Kw3YbZpfNtAcPYxDk+/i0GTc9k29jmr9EmJ+q2uAVG4i1VtIMcPIsfdxE7x2+ni//HRXuyw7iNkMUr2GOrsOqYQUkWIHISSkuoVUd32Q9fb02z9/dSggxQqxXEaq1rqp3OMnVZBypNToRT1WG0j1Ru916Df2w1mBoEaq7iBVre2+Xuv54+54o3cj7mZ+BzGfQxZhtG/Y77MP7a0FXLk2jKePjiOlQYjdF+8BpLpbkyqQGtvj0Kjx8Udf4eWDI7s69mF+fv53onftAuKdGygWv0dR/cvKW4LGQBP7H30RQ8+e6RP2e8WVPfh7A/43yFtqj/isUEMAAAAASUVORK5CYII=",B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACUAAAAjCAIAAACcpVRJAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACpElEQVRIx+3XT2ibdRzH8VdGYd10y5P5L2i7hoqYzRHjYG3VgxlWxHkwF+cQDz0M9LbchJ6KF/VkxYvIwHjRehBa5mEKrp0gdPUSYXPVimap68YY7Hkma7MkLB4iyRgK4mE8it/Tjx9ffg9v3p/fj++TWF1ddRtrk9tb//Xv9f2dploY4OcLGzh/6RoajSbu2r4JmfQW5IZuxJEv8Vf5vNK8B2fPrWO92cT+x1JIbUmg3W4jrLfx2Ylf0FyvY292B3YNJGLsr0O2XNvA0yMBTq8kUP4KKtVeZz4DhWwaO4e246OPF9Fs3Ivc8OZY8nWcjY8GOLaUQPk4TBSgVILkZjgXwfRMEvmLESZeHsN7R08gN/xwzPJZi1KImg1sTaQwNdPz9M6rMHcKZhehOAaFPBSnIpSKcCVcQyO6hgNPpGPjr3phA/v3pfDBcVCHagjvzkF5AcJ6hAC8MJpE0A+zC1VMHnwQbx79MmZ8a5c3cEdfgMoyhCCsQrna2ylkYeq1JE7+EKFSqUA/vHUYzqysxez+NRottNsdQz1/oai7zmfhwyNJzJ2MUHq/glDYNdo5otVsxYzv7m0JRNdvIJ+JuvdMPez2FDJBdz0xXb3luHwmQBhdxfBgKmZ8O9P9OPvrbyjk+zC7EHbddPwtdHL76R/JvYW+WMjgzE8RRnKDMePbM9jCzPxlFA/sRqkYYmrmJn/ZAEdeGsJ0udLdLx3K4PG9d2LyjXlMvz4ey/nlx7UEvqmcxysv7sPXSzXMLoaoLPdY89kAxbEAT+7Zhsm3j+G5p7J4ZvSBGM9np6stzH9bxe5H0nh0YCvuv29H7w2Kom4aP/l8Cc8XdmH8z8hixndzfXHqEha/q+H7lYu43mhgeCCFkdwADj370L9qvv7/f+wf1e8lzgOGhF554gAAAABJRU5ErkJggg==",R="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAAoCAIAAADsXkQEAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACD0lEQVRYw+2YPUibQRjHf1cl1WK1BFQKOjiEIh0cHC2h+IGJkwU/EKWCtmgLKaRDhg5FHMSPQfzCFNRRUYfSRQN+geDYsUORZsnUDMHJKhivw6WX1zfhTdUh72t7y3v877k7fnfP89zdK2KxGHkq98hf+VfnLrz9ELNN9Sbl3d7XO82tiNuGyoHqmlqTnpM+n9ziZvGtyBp6HgBHa6daHxr3Ao9r6oCR7jlrehtzvx48AhAA25FuIPSkEnjalgS+bRUAk99/anvVOrIe0IoFvS39/NXAITC30AF4PC4LYl/rKrC07NWKshz78sFR8T04cAAE37cC0R8nQDQqTEyqHonEgWCwBaiqKtetqaFdRdYRbzPuy+QZ4PNVAOHFY62HF080sVEffuNJr8f2qGk0oxK6Sm8zbimTQHNjGNjdH87aTbGqkrI0ekMGfcj/Eejb3LHxfsvLC6DB+wxoej6ftZtEpzsmpvq15fTmDhDyt5jiQhG73W47c8sLXVf0xUUFQMlDF1Baeh94VJauZ/ZSlBbEDrm3yNTOZihCAkJIU6uitCC2Jff5r7j5kBdp31bfP+sgACkBzs/iWemdc46pvJYZzuLKrqf3WKSyQtLh75KNzwGg68UM0Ozv1f5szGZGzw68HQXCyy+dxJ3jntrZPp1ziE8r/X/v2456lyQSiZw21yJ2SD6/AdP/fx72nPs38hq6yvYn3L4AAAAASUVORK5CYII=",w="/BMSCTX/assets/History(2)-8c109cab.png",E="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACcAAAAsCAIAAABpBjahAAAACXBIWXMAAB2HAAAdhwGP5fFlAAABO0lEQVRYw+2YP04CQRSHP8Q7WG0DN2DgElScYjcmNBzARhtqs4nZLfQIWHEHE4fEC9BMLKCWkLCiFrNhV4IyqwnsI/u6+ZeXb34z836ZmjGGg8cZx4gqa9mzNofz5nAug/X8n+tXq0/Au5kB5uripFlJPoD1QweoB9qRWA6rVTGNRQLcTQDWkXIkPg5rzfH1T/msivedrVHLauOyxV7isupqKV8jtem5fQEYPO2e338GQGsAugLP8Cin3MDSxDFASwG0s52w/eaxK+q+WkXDQAFJPadljsa7nhWilKBrSqn1bhpnStE1Z6ILUUpmLUoph3UaKcBz9gzS6qvXGwNh7G/qydQHaAR6W+OT8ohhG6ARZxp/25WSe0Rn39QbZw3f/22qlu4Rf+T+05slh7X6IaiyluoMvy3fD5/1C6YfewUZ3J8pAAAAAElFTkSuQmCC",p="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAApCAIAAADBK1zlAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACAElEQVRYw+3YS0tUYRwH4OeMo6aSmqk1mC6CoCKlaKOJtGwh7cN9q7JFSau+QNG2rUREXyPIRdCmqIVUotVYiVqmzv1ypoXRjcQLQjM6/9XL4fDjx8N74H1PEI/H/e+JKIOplqiWqJZYb6I7knL9ySzCMI9Lp7rR3x7dkxKFTAZNBw7i0UQchrbgsYskwjBET1cMxaYoHk68hKG+zXiUscTY4w9IpVNbyupqiqK5tQvZQogHm/MoY4lEYhX9fSfQsb8B0SBAEJT+ejNYe762jkYwly7iaE8XcsUi7v/w6EV/e21FSazt9nxQgzcJSBfDdRJ+t8n8XNXXBOiI/dof4xOvUBrqxcCfHmUsUcjnsJot4FO+hFShtI30+kiAzrZDaM3mMP50EgMX+ypEIpdOYiWRxMckrOaK20hvjNagrqUO+XQKmWy+or6OXCqBpZVVfEsGSOYKG2ZlCiGyxRDRSAQn2xux/G4G8zPTGBsZriiJfCqJMLmM7qAW6jfO+hxE8GJxGadjLaidm8LC10XcGBnGuc66ipJojh3B9PNnWzs0HzuL4801aFuaweJUHDdHRzD4L4Mykgh25FZ+4dY9dJ4ZRGkhjrcLk7h7+RqGDu/bM2fMfCaJwuxrTM+/x52ro5sx2HUS9a2dWFj8gttXRnE+1lBhN7Cg+s+qWqIcS3wHPm6wTBG3J98AAAAASUVORK5CYII=",n="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAArCAIAAABuP+aXAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACFElEQVRYw+2Yz0tUURTHP89mHo3zVrMobVULcemAixYjQ+VAtmuiNFATHCWFDJQUCZOQyCizH6aO5FNchv0BgTmFNJugMWY3uJzVbIbAjYHjdXHrzTOzmedGb7zv4nG5775z7vf7zj3ncLVsNsuRooKjhrsDdwcAHqcfdMeSANoBr4V9KIB5s+E/0qCrcw2Ymr7uyEFX7D0wb4aPrwZaOTkx1vkJ6B+4XAwATfvjr/+2V5wSQgaMBkw+/wCYixeVjYOdwhbQ1HQKiM9uOHLQ01sDTDz7CeTzeSAQCCiogRAFIHIpDnxM9DhyIL9SOR+8bqwHRPUDIBRuABovvPmXWgAkPt+xVk5MdgD3BpYU1ECyv/0kDHS/3LbmpRK6fgLw+TyAv9IL+A0P0N5+FhiqPQ2sZnJAKrUJCLGtlAZ29nPDawBVIWBsLFjSnGT/8F2fNX6aySl+FqQSDI8DQ7XjjkzblUhkckA6nVaqNtqjQaL6XN0hHFQGRywl2pZXjmNdKNEfSCWcQkbAr3HLlHUiZByoVhvvrn4DWq7NAMmvj8vMB/vZh87fB2bf3lS2R5L9wejod2tmT13wy6duMbZnw3VZF3YKivfKEs3RV0DkSiug6xWA76S3qIGhA4bhBaLRM0Dyyw9gsP8REDdvWXZUywf7cePqC0fr5xY6DmKvrAYSsvMvH39lr+z9QUlO7i2Ou4PDYBfwiKWstXSICQAAAABJRU5ErkJggg==",S="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAArCAIAAACfNL0aAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACRklEQVRYw+2XT0gUURzHP7Mzuw1BLpgREh5kqagQ8rCHIsoMCYqoTkkHoYvaPztKJ+lQBzE6FB2ELktQUhC0LFEYkURWK4ywIi0qxU42gbkmgSyzzk6HgdfUzq4E4cxhv6fH4/vjvQ+/3+/xe5Ku66yXQqyjaof9Fyli9TD1GlBkGZAkac1I27aBVcsCOo8fCjCZQ3P3zm1AluU1Iy3LAnouXAx8zrT3b4GRkQdAoVAASqWS9wVDIUBVVeDm4CBw5tjBAJO1tMaBEydPA08ePwKKpVXvGFkRzsuX+gKfs4yWBl6NvgCu9vc7BVqpxYTz2sAAwKkjASbbuacFaGvvAJ6lkkCxWPSMCYfDwtnb2xP4nGWnp4A3Yy+BpaUfgGV5V6Mk2cI593Eq8GTNse3A/gOHgdHnKVF15doQiQinMTsJSF2/61a/oQeM7PPcDKBNvAPy+TygKEqFnEnC+Uf7JQCkrqZKfD6RNW5rAlrj+4CJ8THANL37LBIJC6cxo4n9YboBOzFcic8nMuPrF+BTVgM6z56rMok404fjdGsomQSGaATshFHO5xPZ5oYtQPOOvUBG+wCYplkhZxHhdPrMUX55Wawb7m8E7MSKm88nssXvC0BudhJYWPxZ5dUHWzjdqo9G/+7IoyuAfs/fnG2qiwKx3XEgm0kDhYL3q6+qinDmptNif1e0TqyfXs+6mXwlc974jvY2oPv8FTHzlsuZlx2nW7Gt9cCtvvFyJl/JcvPzgGF8+6dfjFtVmHwgk2of+NphgTnsF14F160dWwdHAAAAAElFTkSuQmCC",y="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAiCAIAAAC4O+zSAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACJklEQVRIx+3XzU+UVxTH8c/zPDNleCtIhUKpEanVtKUJdtHYncYYatx207jt1rju0j+if4lNTDeuXLioEqWlUiiMITLMwAzMK/MCz3RhMiTEdNEY8yz4rU7uPfee+82999xzg83NTe9Lofeo02DvRKn/N+zX5ame3Wy1UasfoFpt9Oyff+hPJNlGMYOVrRDffVbHyEBwwqd8EKFUSWFnt4VL41XcvTWcyD0r1VNY3hrC05UiHjz6C7/c+7LnU280sb0XYne/g0KhjqjTxOvdDKbPphNGtrzdh2yxi/VsDnvFPDgmK1dq2Mo10CgeotJqYLGwj4cjbfx0ezphZLlygFqthUqthuvfXDjhs1+u4fuvj7C1D7/9HqPRbuL5ShUSR9asROjEHcRHMRa+nej1xvHxabx5ZQQbhRiL2TTKpW2svCol8p7VQFeAKH1yNWEI9++M9FrS6TQ+GhvEephCJ6FZf2zgCDvlLvozQ3j8ZxNfnB946xRrO0MIwxhxHOPzc2cSSTY+2MRSK8bg8DD+zoV48CzCmysXhiFWdwexWoqwU8wj7lQwd3EykWRfTXfw4p8D5A8PUY8yeLIWYOl1H9JRhDjoIpfPY/XlH5id7sOtq8kk+3g0wLW5VC+7L77MIbvR7vkE3rzaMbrtKmY/zeDHGzOYmexPcHU1P/sBzg6P4uGHTTxd3kO2cJz3ZiZGMX95EgtXP8GFqYGk1I3B6cfiNNh/6V84q9BHbaRyUAAAAABJRU5ErkJggg==",M="/BMSCTX/assets/build_comfile-d5da5702.png",N="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAArCAIAAACB/Y2pAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAB6UlEQVRYw+2YvUsjQRTAfzO7E2088J9I58c1Vv4FyjWChYJgIYpnoYVWiokfcFiICoooFoKIguBV2ovIgZ2KCGkUAopaWhi1mCsmTJaJhvgB2Y15zc6+2Xmzv/fezNsdkU6nKZ1ISiqV6SvTl0j8fFVH+9q7TPyorQdWVpvKgt7I4b9kkSZaW3aBvt7jD/ggrPRXl0+23dX5BxACQBuVfn1UXy/v8kH46IVw30lKBRwcjX55HoSR3sujjznZUFj29tusJwr7IIz0rlJ6sSLNPT3eAkuLAGNjbUB31zKwvvErKvRSAZ6XW+ZCFk2fuQW2N5PA9qZbR7Z2eiISe9/0aGEz3/hDowGBsFufCFxmZluBTObBWquuqgGSiVMglUoB8Xg8xPTSU4CvpI292fWMP+bmz4GhwTpgfuHMGTs02AAg3Log5UWkMl+p7B0ghKGXwMhwvX1yZLguOC7Q1DlNtqkiQi+FDygTe5Pn0gdULBBSLXJ8hjVLGfCBzvVK6Udqz7+/e3FqoPIBJiZPgcR4AzAxeVLAdGK80fojv4qGNvbSB/r7/9psNnu+yYap6Z823NNTjYA2qwM36GjtZkME6FfXmvO+X4+B65vnb/CP95YM/N4rN3pR/NGSqdafkWCljxp95XClzKb/D/NMeeBySiirAAAAAElFTkSuQmCC",P="/BMSCTX/assets/SourceView(2)-5fa0f7ed.png",X="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAAoCAIAAADsXkQEAAAACXBIWXMAAB2HAAAdhwGP5fFlAAABsElEQVRYw+2Yy0oCURyHv/ECCmnQZREUBRGRFLSwcFnUskjEReRCwUULlz1A71C0D6KIKMRdENUiaBG9Q4Qre4BS55wzLZRpcKYSA50J/6vDXM7wnf9vvrlo5XKZHpWP3lX/2t2vQAfnnJbuAF0IwDCMlr2aBhDw+4DIQATYWk/8C+5q9QPY39v94ZjDg2egkIsDR8eXjvRe49b1ujlWtn77NA2QSppbCrm0I73XuIUuzLGUqjXnAT8QHXwHUpk8EAwEgdnYguf7XftaAxu3VArIZleAzWQceHktA7cPTy7mbsdZQyOjZm7zmRQghGjNhNSBcDgELC/GgLOLoou5O3NWdjvpSN9cuFAQEFK4mPsvztpJb7Tc8dYJRF13MXdnzpqcngGUAtCFxAncngZX9VvoHTjr+v4RGI6GGrF2vJKhlIu5paUrQhmAZn+O2Zx1flUC5pZWAb/PxqMBTE2Muznn1n4LZTrcoX8WZ0kpgZviiWffz632aeT8F24AatWqx79LrPZpjtsAt9rQm9xW+4yNRNucxe4sr3FX3irAfGINwGhjgm+c5XZurf+vp+v1CTiZ13XPZd7OAAAAAElFTkSuQmCC",I="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC4AAAArCAIAAACIFi3TAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACRklEQVRYw+3YTYhNcRjH8c+591xmpLGRIlMWampCystMNoQSEk3KQiGTkikrpdlYsJBSlLFUWCiaSEIpE82KslHKTlzlJbrITLn3zjkWZ7jXvdfM2M095tmces5z/uf5f3ue3/8lyOfzpodlTBubSWUmlala+K8fXLp+t6G/d8/29FAJ/qYrd0+2o1yCIIbnC85g64b12Lmt63fk7XtPcP/RY6z4eBxxAGEOtp/Ip6hWEh59p2/Cpx4cvgrda7rw5m0lMvEkVI4cA/Nv4mJ/T+o6KE4exQ+IR+DFyzzWbdnSMH7hoqUwAto+II5TqyvxV3wfhaHjA8hmIAggyCZdCKIHKBUhFxYQppdKVECxCKVyxT07hH1XT0A0gjiOqli+Qxgexdc7Q5jbOgc7N3enpFa+oJRoblXa2RiCaASDV85OMMDAhWfoO7AKFy8PTsCm2TqoWIJMVdqZONGeSn1EdTKSCQKUxyol1ndg9wRsmqmDKrVST6Xaxsai2kU/zKJt3ih69vYiF+bQ0bk8RR30B5WobiWvozIWRdi/fwN27FqNV6/zeDj8tOnVtjGVIKosPuNUorjG84tWCa2tLVi7shPXbtxKRa2MjkI2W1UH2brZl6PfK3aDYZKOa8nVKE2zUUn2JcICuja21L7OFREP13bQJFSSyES8m5LK+2+w7+CPxjOIYVZHda2UTQ3LeGRTUjl0bvJTXf+p85Ud//y2Kf4yjqLU3SRUW6HwGcu6N1UdnCY+ocOS9sVNe5PwX986zaQyzVP5CfJizQBZcQ30AAAAAElFTkSuQmCC",U="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADYAAAAsCAIAAAChatx3AAAACXBIWXMAAB2HAAAdhwGP5fFlAAABfElEQVRYw+3Zv2sTYQDG8c+lMfQHSIYgdDgQ/wFHR6GD4JTshfwD/Q8sFBzs4NRF3QPuOhXaqWOdnDIEhMAhgkWk9AclTXMdruBJtCVNAvnxPttx3HvP+73nee9eLkqSxGSrYOIVLAaLk6Ji/uDTVoxiAa4uIU3vP3QUwUIJuj2ovU7mgOKXb9A4SEd+m/rzCLVZzWLU/3Z5tR6jsfcSzp5ArwWVffgFvoMTcFyCH6tQSGG5C2kZ9Q9NbH9M5qbRmbIZ11/kWJ4+hfMjWPkKEegtw1UZig9hpQPdhZHwm2aK/2KZJW8NKjmKlw/gYgmWuiPnN82N7tdfHc/U3IWfFfj96M/6N1J+05/FOzreKUFncaz8ZiuLeX3ejLGxA1olvHvfQfXNYOPEcXzL2byrWcniOJRx6mfZ/1QDxUFY/q8VgeIgLMMmNVgcTIdth+1AcchG33z11GI03gaKw6yLNyzXYzx7HCgOc3HGMtvZVOeZYhT+GASLweIMWbwGMcuGVHSCaZEAAAAASUVORK5CYII=",D="/BMSCTX/assets/IUDBOC-7b741543.png",z="/BMSCTX/assets/QueryBOC-464af02a.png",_="/BMSCTX/assets/PEXBOC-a27e41eb.png",Y="/BMSCTX/assets/ClassSearch-32afcdea.png",H="/BMSCTX/assets/MenuEvent-87357cfe.png",G="/BMSCTX/assets/Exception-733bf8a5.png",l="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAsCAIAAAB+JKZoAAAACXBIWXMAAB2HAAAdhwGP5fFlAAABzElEQVRYw+3Yv2sTcRjH8deltdoUJENUCsmgmy4OUhwFh4BbdmlGRZq/QEFwcXYI1lFa3OtUqJNjGwSnCoJQSKXgD0TUUtM053Cld7SpNdohd+Yzfu6B78Ob5/l8v1zQarUMgHIGQ8M+hn38TqMHrYX7ZYzmYGcbwvDvDwgCGBmDTheqD1qp4rHyDuZehsd+WO1agOogz0dwWJ7evVnG3NIN+HEBum+h+AI+g/fgG/g6BhuTkAsh34GwgNrsKh4+a6VwXyJFvdcqCSrfL8PmR5h4DQHo5mGnAKOnYaINnZE/IZESHr2oRNNwHYoJHtsnYGscxjv9kkjJvhyxQZFWF+FDEb6cjXOiHxKpmo8jNqg9Bu1T/0IitfOR1PN7Zcw8Au0ncO421tfXM/f+6EP5x1C4healYM+eXIoZb1TKPf1M8jh5Z4/E1Hz8XmlWYjYH/Z5UssEDLL+BqcXzPRlI+FFlNbvz8XMW9TBEIwhQrxfh6Zl9hY3GJ1RbWd2X5TWYSThXL4K1rZ71u18ze79EKpVK+/NjOoB8omgTzIdoTmc7P6LbdTc/EiQar+Ka+hV7nFKQH8Fx/R9bKMf3ajInDvOzzmP4X2rYx3/Qxy/v96sC6+979QAAAABJRU5ErkJggg==",a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAsCAIAAACL2i3YAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAB0klEQVRYw+3XPWsUYRQF4GfWlbh/QMFgkUQRQay0sLBSxN7a1EmbRtBCRFKoECsRCxvxJwhW/gORFEZZ0hlELSKLMfsx7zszFhM36/qBcclOipxiGO4M597znnsvM8na2prdRM0uYz9B9Qnq//je0qOnv40vzM/ueQVl7bduXkeIsR8/WK/j9uLdv+vYdQXJ0CT/6ax3ir6mMXpQ1r60eGNExuWV1T7bwvzs2LuotRmx3mqh1wtI0xTdtIfuViSg0+mi3elgs91Ge7ONEEOlc3Dn3gPMXbuK16+WEfICMcsQ0oheSNFLI9IQkec5Zqam0FxdrUhB2blLj5/hxPFprH9LcebUNDY6Ec9fvMSl82fx/tMXNJvvcGxyEocaDbx5u1LRHJQI6XYPZDFDDAExZv2zzrKILBuMZCiKYoihCgXZwL7c+WJLfmUYvwcx/X8BIP7MMHYFcRQPyjMI1XpQdv0oLsSKt+lIHiT2wByUu2XrvihQ0N8z5dOiDClQFPnQHAwyVKHgQG075YVzp9HLIa8FXLl8Ea2vG2g0GpiaOYk8i5iYmECSJJV+2ZWYnVvAh4+fUaslSCQ/1uVWjYPX0qGjRw7jycP7e0DB/i/UfoKd4DtM/eEhBbPFxgAAAABJRU5ErkJggg==",Q="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAtCAIAAAC1eHXNAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACnklEQVRYw+3Yz04kVRTH8U/1P0aDQwQGMoi40hg3CmFhlEg0+AJujM/gShKcaCYmJi7nEXwBl7MicSILgqsOCThjoiYuGLTRoUdaxLa7qrraxdXSDMQeZ0WRvouqyk3VrXO+93fPPedG+/v7zkErOR9taMfQjiLYURn4xsHBAZrNJnq93v8afXJyEjMzMyiVSheCRyCxvLyMer2OpaWlgV+laYqNjY2857+pFIdH0EQgsbi4iG63e6b3WZYhjmNMTExgfn4eOzs7A6mcFx7Rmfvcl7d/wsH9GIfNHqqjFXSTHkYq5VPDZHjh6Sfw+sJVjI+P52wCp62tLYyNjWF2drZQ+mjc7+D4+y/w4dq1gaOcdBN8evM23oiivL9Wq+XPKysrWF9fLyCP1nEJ769dwzeNY2ztrWHschPtOMHdexN4ZeYTvPz8U4iUcwatVitXRlhNU1NThY2n6eEtpBaQZhlGR+/hseo4Ml1ktT38fNRG1s8QpykqlQqiKMpjT7lcLvh+W7nyJvp9+K0d46jTQa//O06SLn5pd3CkC/0ItWo59z7wCNd+GKjw+cdfPDoZ9hrPIhu5g5OkjdbRM3hueuRBz0qlnMRFyceSw1vIsgW0/ujhxekPML/3Hr7+7i5ayzeQJinC/MdJ9oAmglYuij4ifXz1w7tIkgT1OEZ8tYr4ztt5/zuv1nM9Be8DlRBPi6+Py3Mr6PdifPzWzVwB4X56ugOVS9XSmWun+DzmrlzCZ59/ix9/jfF4rYI47qFWK/sXon/ysbknHyFyFIHHay9N58rf3d3F9vY2Prp+/ZH/FPLTQsePKMo1v7q6mvv0MPXcaRKh9tnc3DzXPKKB53SNRiOvch8+Pp5uYa8JdV6o6orJY3guNbRjaMff7U/MYBhENtkj0gAAAABJRU5ErkJggg==",k="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAlCAIAAAC79+zZAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACOElEQVRYw92YPY8SQRiAn5mFvcO7y56BEEMoTAx+NBISqguEhkr/DY0NncTWysLKxEYbazoKQmyICcUVFiaaIwIm5ORy4smyHxaDk826Qaxgb4rJZnYzO8/7/Y4YDodsb0i2Orb8+8Sad+PxGJhOp4Druv+1byaTAXK5HCCljCG94q7VakC/3wcqlco/d3QcB+h0OnpljQx2mF7pW3GXy2VgsVhEsnqeB9i2DaTTaaBUKgGDwWC9DHaS3vd9/az0vVwu9dkV6+r4UurvhRB63bIsoFqtAr1eT6/n8/mY6H4lifkpINwlwMHDkAwMw4ikN01TP9frdaDdbseQ3pm8BnDnQOLui5DWlXcoGSji2WymZaP8IpvNxiTqCRwg4Z4Bd6wPgPB+ADiXgHP2HJDWCSCPioBh7IV3ECIklfhkvEO7DaSWp8DNWylAmgXAN68Ab/YesL++AYzjOpB88CxEqejVHIwfcaC/NB8D2BNgn58re/gz+9IA5GERSN5/GiJWvhD0/vhVOxKY7z8C9i5agJ+wAJwrwLv4CJjFtwDCiLR5pe9gNIxbrWe45wC+AJxv7wDPWQBC3gD8XxPAP7gXmSeVDIJZMW70wp0BX77fBgonrwClQ+fzS8C3z9fUB8GMEE/6RaoCfJofAYXEsfb9ZOHJGn1fry5HjVarBTSbzWgr2YA7WOvFwvIDMbzRaGiCTbqcv7lVj9DtdneOXqy5XhiNRrrT2zCKRcdQw9Ddj+p14kB//W83fgPE39TR//0a+wAAAABJRU5ErkJggg==",T="/BMSCTX/assets/ColumnDictionary(2)-281fe6ec.png",O="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAAnCAIAAADVZBwHAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACVUlEQVRYw+2YPYgTQRiGn9m/C+pdBKOgEgiKShC1uQPRRtFOESsRrrSwOVA5BMtDhMODeCJY2Clio4ggYiOCvYWN2tgYgo0EhZMYzc6PxeLu3CabnHhNkv2qnd2db2ee/X7eXdFoNBgGcxgSyxe63ualxo+evwbCMAS0NoM36gjA931g9syJnGgX0Xb7F7Awf/GfvCzU7uUxmkE0lGEyOFcB2DDZe+rPHwCPPwPSnpUTXWVaqmTwvg6wMWNqyzpstYG7D55mVAYHCHwfuHD+9JgRVSohqj4aQGTMjGqsC8Dy9asDn3Ttxu2xjFGlZHz8og7gZexFaoBTOyTw9y2k6RtjgELgAWHYGU+iMiG6ZaIvUQOgjQG+NFcA0RXOkVrYvbOU8hxZuVzus7KUUB7eOmpl/WQA4GakfSStlDHA9lIREF1Ibf1le7aZdXPt+dExtESl1ZmmfABH9KujSmvgw6d6rE1X1xANHD60N+U5i2ufD7iR6EybgsFbkaEB9u+pACIiakxM2o5RpdTac3ykiCbKcnNAz+pod6GV3wBv3r4DXEcAShvg6MxBQNrKQf2XZh3izpQw+Pa9BQQTfqL/wzDu4JG5QgBHpg/EutNzPUBrncp0JdWYqqdk347rAku1O/GZ+ctzQKeTRJuK6qnUQBD4wM3acnz1yqW5NWb96BJ1rCTfWiwA1eq++ExpqgBAoY9H+/5txUJPz+NE9GuzCVSnj8Ul9NWzh8DJs7PA4tItwBjdu7IKB/A9F3j55D5QnTke96pdlcpYEBX5H+d8oflC18f+ANhq3zBe1iLNAAAAAElFTkSuQmCC",V="/BMSCTX/assets/dbConnection-832adec0.png",F="/BMSCTX/assets/dbSchema-3c3c63a7.png",K="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAlCAIAAABH4scTAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAA3UlEQVRIx2N8/PgxA10AEwO9wKhNozYNlE0seOSS9qSQbe48lzmD0k8QMCtyBh7ZVz9eMTAwPPr6gIGB4cOvTwwMDMu2r2RgYHj27BkDA4OUlNSg8ZNbsyec7XXcF87eNmkzQRP//fozKNPertrt8LSHP56GWn4iD/z++ndQ+omStPf/F8No2hutn6ie9prqawmXe3/+Dfq0F+YQAheH1EAE/PR7cJYRyGD2zPkMDAz/Gf7j8MJ/BgYGiOT///8YGBgY/jMNsJ8YCfY1IC0C8sBgakfgctdoaTT8bQIAiuZRcQTYXsUAAAAASUVORK5CYII=",j="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB8AAAArCAIAAAAPJ8TVAAAACXBIWXMAAB2HAAAdhwGP5fFlAAAB9klEQVRIx+2Xz0sUYRjHP7MzO80lPViHRTqIpJAIethDIWWGUKlohGhChyxbtV+XRIJKugqdlP6FkgIPsohiRCL9UphgI1gqCjfbwFwFL8Oss9Nh4D3kjOLB5j3scxv4PC8fvjw87ztKJpNh3yrCflbx9KDS/vl+lnwNaKoKKIqya7/rusCW4wDdLadCdfd8n4yPAaqq7trvOA6QGLwhQe7m+zfAxMRTwLIsoFAo+HtFIoBhGMDj0VGg6/zJUN1r6+NAW/sFYPLFcyBf2PLvVDVB3rp5W4LcU+Yi8GpuFrg3POyNUdCoC/LRyAhAx5lQ3atraoHGpmZgOjkF5PN5385oNCrI/v6EBLmnP38CFuZfAuvrG4Dj+M+MoriCfHD/IQAtobpXVB4FTjScBuZmkmI2ttcBXRfktau9EuT+49sXwFx6B+RyOUDTtIDcFUEO3R2SwD1WfgSojx8Hlt7OA7btP++6HhXk5Z5LErhnf/0EvqdNoLvnyg63q3ejemRfQoYdWXboMFBRVQekzA+AbdsBueuC7Oq8KIH72p9VYPnrR2B1bXOHHQmuIHv7ZMj9YEkpUHksDqRTi4Bl+e9Iw9AE2XrurATu3kZsbmoErg/cEa+t7eW91DwyaI/+X/fllRUgm/29pzdweSwWgrtS/Csrnr7H+gs7ZafFOiNpNQAAAABJRU5ErkJggg==",L="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAIAAAADnC86AAAACXBIWXMAAB2HAAAdhwGP5fFlAAAB7UlEQVRYw+3YP0hVYRjH8c+5f0IxNXIQgmtTNERGtUctDkEtjVHcySAoIlqEcsjAJSIIHJyCaMulwEEookVwCQyHavOC4VCUKV293nsajtxzTa9/aPAc8Dc9PO9z3vf9nuc5z3nPCUqlkr1Qxh5pf+FELDw+VBgfKvzP7FvMsGfEuU29rwcLuDk4jNGGLV98UNoJZd3uHxjGyGABlx+WEkycy8f29RsDdXtmfPuUN8ZHyubbE5/jSOHSAlrODMPMFZy9cBvy3VDbsP/KPKx8gRNjCGcGEPidEuJIlck2VCtjaDkH5ffQcj6OafSUP0B2sg25juR1ru2Ja0EnVmtLWHwHAlh8++/+10YzEGQ6E9qrtycOg4NYLkMmGxOvUzUKhdoK5FvbE0ocbHH0ibpu/70+ODaB+TcQNLlN4Sp0XwJf+zD6eKJZh09wjiPNvoq6bvRoNyuHOLLnlNRWtT/f0NrRhYUf35HNbajtEKqr0HG4q35V2qo60v2rBTx/dhJ6P+HzC8g0vLNrFTh+DUz3onhrGo9eltKY46g1lRdg6iiq4SyWF8N4lgMBqlM94Feiz9XBDj/a1jL99EjsOj0X2x9jf/HO3NbZTQnxOu4nhzYdLd79uRPWVBE3494VawqJG7kj7Yo1tcT7vyJ2qb8Pl597vrzRhgAAAABJRU5ErkJggg==",W="/BMSCTX/assets/UserManager(2)-23194e1a.png",r="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACkAAAAmCAIAAADWVCV0AAAACXBIWXMAAB2HAAAdhwGP5fFlAAABnUlEQVRYw+XYv0tCURTA8a/RWBTVVG0t0dLWj0WooUUiDZUo+gsa2yqnlDLKxaChorCgoKChgmpIEKMfmiCBmCANikEUajhKNTx4PHwq+SB8z854uXDfh3vvOec+XSKRoEpRR/Xiv65d/9cL2JxuYEivB4YHe2vI7drwFB1Pf2aBHbcTeAhHgBHTNHB1sqdxtyB2OeaA92weyKZzgH1tSRQHn6JANPZSE+dcKk68vgFefwDw+nwF4kg0DiyvrEp3WoNuZeKpCbNm97uUWJD1D/QB+8dnwNe3Thx32BeBy4tzDbrLi6WnV8hcQhzubgPxZArw+e8AZmc04v69WAjr+CgwZjACzQ0dAKQ0Vb8rFa9vegCLyQq0NLYDj9EAML9gKzpf3fv9kckXZC7hHpcStzV1AqFYsLxY9e5MJleQqz1Hp+I9NhsNysSqd8s7EOnnGg1GoLVysYrd0i5TXo8PdrbEzBV6rlhcfbdO/g4VXhKlxEI9loYCsSrd17dhoKe7q0A8aTEByVQK8N3ci/MViFXplncgimUadNf4f4cf4h4HeOmuylgAAAAASUVORK5CYII=",q="/BMSCTX/assets/UserFunction(2)-877c3dc4.png",J="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAAkCAIAAABT8G6pAAAACXBIWXMAAB2HAAAdhwGP5fFlAAACoklEQVRYw+3YzWucVRTH8c99ZjpE+xJoi401qRYq0hpx4souuiixLvRPUOimmy7c+h8o7lyKdau0C3EjKgTEhaIuREoxbUSKrVFQO/QlySSZl3uviydOhoyKShSm07O4XM6zOPf58jsv94bFxUXDYIUhsXsH3W6rDro+vfgzbsS9+HUtI2eQEnJKiCkip4yUE3KMSDn39jEl7KtFPPbgDpyoT4wk0WvtJnbtmsKB+7YnzFsLCzhRH02NNtuTaN5c2cYwj7ZHOetzzHjlhSPbGObMa9dHmWhOvX27G1GW0bJqxgRJRtrwJMRu3lxzQjtmHJ7Y3au7o0r090YEoQgIZb8pAnLICCmgKL+GAiFEhCKiffEcqmtXsXRrFql7/wgT7ddT+R85BAhQyZCCnkZLTxEqaM2fx86xHzD+1Gnc/OocDuWjYHpLrKmpqb84XP+sPNRZnzY1qmSZ8x/S3fgYM5a/fQ+V9U8w/uQpNK9/hMrYQ3jx8Je4c2U/xo/ObmE2yHXw3jHMRNNAzQslur6a0E83VQO6ja+xb+Z5xNV5jO2fxHr8EYdOTuP799+BPqKDXP/sDjfMRLudzhaNhg2UuUc3D9Ct7JxE59Y1FJUGQtFEbU8D1lex+lMLe/5Gjt9t09Nmr6+UnoEKsDEJNC5j6dKbCLUOUncNRboNxW7kThvfXLiK6vGXRrIzpZS2Zn3fWnJd/u4DLF15F3tnjiO35xDiMhbm2tjRaqESAt6+8Rxerj8zkkQP1FZw9vXPkMrbekyI5T4lnH3kAuqzp9BuvIFqdRyXPm7h/MLT+KX2eE/S008cHJXpKfzL17z5V/HAzBS6t7/A5Q/vIB05jYP1Z++9Pf1DW84PY2Xuc6w2C1SOncHEsZP/0UHveo3+7zY0RH8D1ZYpDVrlEQoAAAAASUVORK5CYII=",Z="/BMSCTX/assets/ManagerTool(2)-351c9ff3.png",$="/BMSCTX/assets/build(2)-0c30a37b.png",tt="/BMSCTX/assets/MenuReBulid-cfe49ac1.png",st="/BMSCTX/assets/MenuAdd-d4faabba.png",et="/BMSCTX/assets/MenuProperty-15e8c695.png",it="/BMSCTX/assets/File-dc9b38cf.png",c="/BMSCTX/assets/ServiceRight-7caa96e8.png",ot="/BMSCTX/assets/ServiceProperty-9c87dd0e.png";const At={},at=A('

Service Model 구성

1. 도구상자

save, build, test, source view, menu reload 등 POWER MDD에서 사용되는 각종 기능들을 제공합니다.

1) (Save)
업무서비스 Model 내용을 저장 처리합니다.

2) (ImageCapture)
Service Model 작업한 모델링을 bmp 파일 형식의 이미지로 Dump 하여 저장합니다.

3) (Logic / Physical)
논리 모델과 물리 모델을 토글 방식으로 확인할 수 있습니다. 논리 모델은 휴먼 Interface 중심으로 표현되며 물리모델은 Compute Interface 중심으로 표현됩니다.

4) (History)
서비스의 변경 및 Build 이력을 확인하고 과거 작업 상태로 모델링 작업화면을 Rollback 하여 확인할 수 있도록 지원합니다.

5) (Service Reload)
현재 저장이 되어 있는 서비스 모델을 다시 로딩 처리합니다.

6) (Test:NotCommit)
Model 테스트를 수행합니다. 수행 후에 해당 Model에서 처리한 Database Transaction을 rollback 처리하여 반복 테스트를 수행할 수 있도록 지원합니다. 테스트시에 출력되는 Trace Log의 내용은 해당 서비스별로 정의가 되어있는 로그 수준을 지정하여 확인할 수 있습니다.

7) (Test Execute)
Model 테스트를 수행합니다. (Test:NotCommit)방법과 동일합니다. Database Transaction을 반영합니다.

',11),rt={class:"custom-container tip"},pt={class:"custom-container-title"},nt=t("p",null,[t("img",{src:p,width:"25",height:"25"}),s(" 버튼과 "),t("img",{src:n,style:{position:"relative",top:"5px"},width:"25",height:"25"}),s(" 버튼의 차이점"),t("br"),t("img",{src:p,style:{position:"relative",top:"5px"},width:"25",height:"25"}),s(" : 테스트 Debugging으로 해당 서비스를 실행하지만 데이터에는 반영하지 않습니다."),t("br"),t("img",{src:n,style:{position:"relative",top:"5px"},width:"25",height:"25"}),s(" : 테스트 Debugging으로 해당 서비스를 실행하고 결과를 데이터베이스에 반영합니다.")],-1),lt=A('

8) (Class Execute)
Mode 클래스를 수행합니다. 수행 후에 해당 Model에서 처리한 Database Transaction을 반영합니다.

9) (build)
Service Model에서 작업한 모델링으로 자바 소스를 생성하고 해당 자바 소스를 컴파일 수행합니다.

10) (Source View)
빌드한 소스의 내용을 확인할 수 있습니다. 관련 자바 파일을 확인할 수 있는 Viewer을 제공합니다. 소스는 Spring 관련 자바 소스와 Ibatis/Mybatis 형식의 의 소스 생성 형식에서 지정합니다.

11) (Source Copy)
모델 작업 중 유사한 모델 서비스를 복사, 편집 사용하고자 할 때 이용하면 편리하게 사용할 수 있는 기능입니다. 현재 모델 서비스의 정보를 복사합니다.

12) (Service Paste)
복사한 서비스를 현재 오픈이 되어 있는 서비스에 붙여넣기 합니다.

13) (Menu Search)
Service Model에 사용된 여러 가지 정보를 기준으로 검색할 수 있는 기능을 제공합니다.
(1) IUD BOC
모델에서 사용하는 Database BOC 중 쿼리를 직접 입력하지 않고 DML을 생성해주는 BOC을 대상으로 검색 기능을 제공합니다.

(2) Query BOC
모델에서 사용하는 Database BOC 중 Query를 직접 입력하여 사용하는 BOC을 대상으로 검색 기능을 제공합니다.

(3) PEX BOC
모델에서 사용하는 Interface BOC 중 PEX를 대상으로 검색 기능을 제공합니다. PEX는 공통기능을 호출하여 사용함으로 공통기능의 변화에 따른 영향을 확인하고자 할 때 사용하면 편리합니다.

(4) Class Search
모델에서 사용하는 Class 정보를 대상으로 검색 기능을 제공합니다.

(5) Menu Event
모델에서 사용하는 Menu ID와 Service ID 정보를 대상으로 검색 기능을 제공합니다.

(6) Exception
검색한 날짜로 모델에서 작업한 서비스에서 오류 났던 메시지를 확인할 수 있습니다.

14. (Menu Reload)
(Menu Search) 기능 또는 (recycle) 기능을 사용한 후 화면 메뉴 구조 영역을 reload하고자 할 때 사용합니다.

15) (recycle)
휴지통 기능으로 영구삭제 처리하지 않은 서비스는 화면 메뉴 구조 영역의 휴지통 메뉴에서 서비스 복원이 가능합니다.

16) (Table Dictionary)
Data Column Dictionary를 Database Table로부터 추출하여 일괄 저장할 수 있는 기능을 제공합니다. 해당 기능은 oracle, postgresql Database 이외일 때에는 지원 가능 여부 확인 필요합니다.

17) (Column Dictionary)
Column Dictionary 관리화면으로 검색, 신규생성, 수정, 삭제 기능을 제공합니다.

18) (Name Rule)
Package나 Class, Database 등의 Name 규칙을 설정합니다.

(1) Package Name Rule
Java Package Name 규칙을 등록합니다.

',17),ct={class:"custom-container tip"},dt={class:"custom-container-title"},bt=t("b",null," Name Rule 규칙 ",-1),ht=A('',1),gt=t("p",null,[t("b",{class:"font18"},"(2) Single Name Rule"),s(),t("br"),s(" Java Class Name Rule와 Method Name Rule을 지정할 수 있습니다. "),t("br"),s(" 지정 방법은 접두어와 접미어를 정의하여 해당 규칙이 허용되는 명칭만 사용 가능합니다. "),t("img",{src:h,width:"400",height:"280"}),t("br")],-1),mt={class:"custom-container tip"},xt={class:"custom-container-title"},Ct=t("b",null," Name Rule 규칙 ",-1),ft=t("p",null,"해당 접두어, 접미어를 모두 허용 시 “*” 를 지정하면 됩니다.",-1),vt=A('

(3) DataBase Connection Name
해당 업무에서 사용될 Database Connection Name을 등록 관리합니다. 일반적으로 해당 정보는 POWER MDD.BMS 관리자가 등록해주어야 합니다. 실질적으로 사용할 데이터베이스의 연결정보는 BMS Config의 Database Resource에 등록이 되어 있는 Name 정보를 사용해야 합니다. DX에서 서버가 정의 되어 있는 Database Resource 중 해당 프로젝트에서 사용될 Name 정보만 등록하면 됩니다. 등록된 이름은 Query Developer와 Service Model 그리고 Data Model 중 기본 데이터베이스가 아닌 별도의 데이터베이스 지정이 필요할 때 사용됩니다.

(4) DataBase Schema Name
해당 명칭은 Service Model의 BOC(Business Operation Component) 중에서 데이터베이스 조작 언어 중 스키마 정보를 설정하는 속성에 표현됩니다.
사용자 편의성을 높여주고 사용자로부터 오입력 및 잘못된 값의 할당을 줄여주는 기능입니다.

19) (Source Clear)
Application 생성(개발) 중 불필요한 서비스 또는 가비지 발생시 해당 Java 파일 관련 소스를 삭제 기능을 제공합니다. 삭제된 관련 소스는 Model에서 Build를 재실행하면 됩니다.

20) (FTP Server)
X

21) (User Manager)
해당 프로젝트의 사용자의 기본 정보 및 권한 ID를 할당해주는 기능을 제공합니다. 사용자 관리기능을 사용하기 위해서는 관리자 권한이 있어야 가능합니다.
처음 사용 시에는 root 사용자를 이용하여 사용자를 생성하면 됩니다. 초기 로딩시 기존에 등록이 되어 있는 사용자 목록입니다. 등록할 때는 먼저 Clear 버튼을 클릭 후 정보를 입력할 수 있습니다.

',5),ut={class:"custom-container tip"},Bt={class:"custom-container-title"},Rt=t("b",null," 사용자 모델 권한 관리 등록 필요",-1),wt=t("br",null,null,-1),Et=t("p",null,"사용자의 모델 접근 권한은 Normal 권한과 Common 권한을 결합한 권한이 설정됩니다. 사용자의 모델 접근 권한은 2개의 권한을 사용하여 할당이 가능합니다.",-1),St=A('

22) (User Function)
해당 프로젝트의 사용자의 기본 정보 및 권한 ID를 할당해주는 기능을 제공합니다. 사용자 관리기능을 사용하기 위해서는 관리자 권한이 있어야 가능합니다.
처음 사용 시에는 root 사용자를 이용하여 사용자를 생성하면 됩니다. 초기 로딩시 기존에 등록이 되어 있는 사용자 목록입니다. 등록할 때는 먼저 Clear 버튼을 클릭 후 정보를 입력할 수 있습니다.

23) (Manager Tool)
해당 프로젝트의 사용자의 기본 정보 및 권한 ID를 할당해주는 기능을 제공합니다. 사용자 관리기능을 사용하기 위해서는 관리자 권한이 있어야 가능합니다.

(1) Service-Table Manager
해당 메뉴들을 선택하고 IUD-Table List 버튼을 클릭했을 때 해당 메뉴에서 사용하는 테이블을 확인할 수 있고 해당 테이블을 선택하면 해당 테이블을 사용하고 있는 화면들을 우측 메뉴에 확인할 수 있습니다.

(2) Build
소스 빌드 시 여러 개의 서비스를 동시에 빌드를 처리해주는 기능입니다.
좌측의 업무 모델 메뉴에서 빌드하고자 하는 메뉴 및 서비스를 우선 체크 표시합니다.
Build List할 때 빌드 서비스의 Count가 너무 많이 실행하면 서버에 부담을 줄 수가 있습니다.
빌드는 실행 내용을 선택된 서비스 별로 소스 생성/컴파일/배치를 실행합니다.

',4),yt={class:"custom-container tip"},Mt={class:"custom-container-title"},Nt=t("b",null,"Service Model 내에 있는 빌드 기능과의 차이점",-1),Pt=t("br",null,null,-1),Xt=t("p",null,[s("Service Model 내에 있는 빌드 기능은 서비스 모델을 사용자가 모델링 테스트 등 다양한 기능을 실행하면서 단일 서비스만 빌드가 됩니다."),t("br"),s(" 또한 빌드하는 사용자 환경에 로컬 테스트 환경이 On이 되어 있을 시에는 해당 빌드로 생성되는 Resource를 Client로 전송 기능이 동시에 실행이 됩니다."),t("br"),s(" 즉, 로컬 테스트 On 상태일 때 build는 소스생성, 컴파일, 서버배치, build Resource Clinet 배치가 수행됨으로 사용자는 자신의 PC 환경으로 테스트가 가능하게 됩니다."),t("br"),s(" 그러나 해당 일괄 빌드 기능에서는 로컬 테스트 환경이 On 되어 있어도 빌드 시 build Resource Client 배치가 수행되지 않습니다.대량 서비스 빌드시에는 해당 Resource를 Client에 배치하지 않습니다.")],-1),It=t("p",null,[t("b",{class:"font18"},"(3) Menu ReBuild"),s(),t("br"),s(" 메뉴 구성을 변경 또는 재구성 시 사용하는 기능으로 메뉴의 복사 및 메뉴의 이동을 처리할 수 있습니다. "),t("br"),s(" 메뉴 복사 처리 시 반드시 고려해야 하는 것은 복사된 Menu는 모델 권한 처리에서 별도로 권한 등록을 해 주어야 합니다. 권한 등록하지 않으면 복사된 메뉴는 Service Model의 업무 메뉴 목록에 나타나지 않습니다. 사용법은 이동 또는 복사하고자 하는 업무 메뉴 좌측 목록에서 선택하고 이동 또는 복사하고자 하는 위치를 우측 목록에서 선택하고 해당 버튼을 선택하면 재구성 업무 메뉴 목록을 볼 수 있게 됩니다. 이후 저장 처리 를 하면 됩니다."),t("br"),s(" 우측 목록의 TreeNode중 Background Color가 노란색인 경우는 이동 또는 복사를 할 수 없습니다. "),t("br"),s(" 해당 메뉴는 종단 처리 된 Menu로 하부 구조에 Menu는 올 수 없기 때문입니다. 즉, 해당 메뉴의 Child Node 는 메뉴에 올 수 없고 서비스만 등록할 수 있습니다. "),t("br"),t("img",{src:tt,style:{position:"relative",top:"5px",width:"400px"}}),s(),t("br")],-1),Ut={class:"custom-container tip"},Dt={class:"custom-container-title"},zt=t("b",null,"사용자 모델 권한 관리 등록 필요",-1),_t=t("br",null,null,-1),Yt=t("p",null,[s("해당 Menu Rebuild시에는 반드시 사용자 권한 관리에서 권한 상태를 재구성하여야 합니다. "),t("br"),s(" 메뉴 구성은 사용자 권한 관리와 밀접한 관계를 가지고 있습니다. "),t("br")],-1),Ht=A('

24) (Expand/Collapse)
Display 기능에 대한 편의 기능을 제공합니다. 해당 기능은 토글 방식으로 지원합니다.

25) (undo)
서비스를 작업합니다가 이전 상태로 돌리는 기능을 제공합니다.

26) (redo)
서비스를 최근 상태로 돌리는 기능을 제공합니다.

2. 화면 메뉴 구조 영역 및 속성 영역

화면 메뉴 구조 영역은 업무 구조를 Tree View 형식으로 표현한 메뉴로 모델링의 대상이 되는 서비스의 메뉴 카테고리 영역입니다. 등록형식은 업무 메뉴와 메뉴를 구성하는 서비스로 분류됩니다.

1) 메뉴 추가/삭제

(1) 메뉴 추가
추가 하고자 하는 업무 Node를 선택한 후 오른쪽 마우스를 클릭하면 Context Menu가 활성 됩니다. 활성 된 메뉴에서 메뉴 추가 선택하면 됩니다.

',7),Gt={class:"custom-container tip"},Qt={class:"custom-container-title"},kt=t("p",null,"메뉴 안에 메뉴를 추가하는 것은 가능하지만 서비스가 있는 경우에는 메뉴 추가가 안 됩니다.",-1),Tt=t("p",null,[t("b",{class:"font18"},"(2) 서비스 추가"),s(),t("br"),s(" 추가하고자 하는 업무 Node를 선택한 후 마우스 오른쪽 버튼을 클릭하면 Context Menu가 활성 됩니다. "),t("br"),s(" 활성 된 Menu에서 서비스 추가 선택하면 됩니다.")],-1),Ot={class:"custom-container tip"},Vt={class:"custom-container-title"},Ft=t("p",null,"메뉴 안에 메뉴가 있는 경우에는 서비스 추가가 안 됩니다.",-1),Kt=t("p",null,[t("b",{class:"font18"},"(3) 삭제"),s(),t("br"),s(" 삭제하고자 하는 업무 Node를 선택한 후 삭제하면 됩니다.")],-1),jt={class:"custom-container tip"},Lt={class:"custom-container-title"},Wt=t("p",null,[s("삭제 처리 시 삭제된 서비스 모델은 "),t("img",{src:a,width:"25px;",height:"25px;",style:{position:"relative",top:"5px"}}),s("   (Recycle)로 이동됩니다. 사용자 실수로 서비스 삭제 시에는 휴지통으로 이동한 후 해당 서비스를 복원 처리하면 됩니다.")],-1),qt=A('

(4) 공통메뉴 추가
메뉴 추가 방식과 동일하며, 공통메뉴로 추가 시 Node의 아이콘으로 분류 표현됩니다.

2) 메뉴 속성 설정

(1) MENU정보
① MENU ID
해당 메뉴의 고유 번호입니다.

(2) 기초정보
① LABEL
해당 메뉴의 이름을 입력합니다.

② ReadOnly
Tool Box > Users > User Manager의 ReadOnly 여부에 따라 서비스 모델 접근이 됩니다.

③ 작업완료설정
작업 완료 상태에서는 서비스 수정이 불가 처리됩니다. 해당 기능은 권한이 할당된 사용자만 변경이 가능합니다.

(3) CLASS정보

',7),Jt={class:"custom-container tip"},Zt={class:"custom-container-title"},$t=t("p",null,"CLASS 정보들을 미리 입력하는 경우 해당 메뉴 안에 서비스를 추가할 때마다 서비스 속성 창에 CLASS 정보들이 자동으로 입력됩니다.",-1),ts=t("p",null,[t("b",{style:{"font-size":"18px"}}," ① PACKAGE명"),s(),t("br"),s(" SYSID는 별도로 해당 프로젝트명을 설정할 경우 SYSID 태그 안에 해당 프로젝트명을 넣어 설정하고 그 이외에는 DEFAULT로 설정됩니다."),t("br")],-1),ss=t("p",null,[t("b",{style:{"font-size":"18px"}}," ② CLASS명"),s(),t("br"),s(" 메소드를 분류할 수 있도록 클래스를 입력합니다.")],-1),es={class:"custom-container tip"},is={class:"custom-container-title"},os=t("p",null,"해당 정보는 해당 Node의 Child Node가 서비스일 때 유효하며, 프레임워크 특성상 메뉴별 클래스 명은 중복되면 안 됩니다.",-1),As=t("p",null,[t("b",{class:"font18"},"(4) JSP정보"),s(),t("br"),t("b",{style:{"font-size":"18px"}}," ① JSP 경로"),s(),t("br"),s(" Return Type이 Jsp인 서비스를 소유한 Class일 때 선택적으로 사용합니다.")],-1),as={class:"custom-container tip"},rs={class:"custom-container-title"},ps=t("p",null,"해당 정보는 해당 Node의 Child Node가 서비스일 때 유효합니다.",-1),ns=A('

(5) 내용설명
① 첨부파일
해당 메뉴에 설계서, 의뢰서, 확인요청 등 파일들을 업로드 및 다운로드 기능입니다.

3) 서비스 추가/삭제
(1) 메뉴에서 마우스 오른쪽 버튼을 클릭했을 때

① 서비스 추가
추가하고자 하는 업무 Node를 선택한 후 마우스 오른쪽 버튼을 클릭하면 Context Menu가 활성 됩니다.
활성 된 Menu에서 서비스 추가 선택하면 됩니다.

',2),ls={class:"custom-container tip"},cs={class:"custom-container-title"},ds=t("p",null,"메뉴 안에 메뉴가 있는 경우에는 서비스 불가합니다.",-1),bs=t("p",null,[t("b",{class:"font18"}," ② 삭제"),s(),t("br"),s(" 삭제하고자 하는 업무 Node를 선택한 후 삭제하면 됩니다.")],-1),hs={class:"custom-container tip"},gs={class:"custom-container-title"},ms=t("p",null,[s("삭제 처리 시 삭제된 서비스 모델은 "),t("img",{src:a,style:{position:"relative",top:"5px",width:"25px",height:"25px"}}),s("(recycle)로 이동됩니다. 사용자 실수로 서비스 삭제 시에는 휴지통으로 이동한 후 해당 서비스를 복원 처리하면 됩니다.")],-1),xs=t("p",null,[t("b",{class:"font180"},"(2) 서비스에서 마우스 오른쪽 버튼을 클릭했을 때"),s(),t("br"),t("img",{src:c,style:{position:"relative",top:"5px",width:"300px"}}),s(),t("br"),t("b",{class:"font18"}," ① 삭제"),s(),t("br"),s(" 삭제하고자 하는 업무 서비스를 선택한 후 오른쪽 마우스를 클릭하면 Context Menu가 활성 됩니다."),t("br"),s(" 활성 된 메뉴에서 삭제를 선택하면 됩니다.")],-1),Cs={class:"custom-container tip"},fs={class:"custom-container-title"},vs=t("p",null,[s("삭제 처리 시 삭제된 서비스 모델은 "),t("img",{src:a,style:{position:"relative",top:"5px",width:"25px",height:"25px"}}),s("(recycle)로 이동됩니다. 사용자 실수로 서비스 삭제 시에는 휴지통으로 이동한 후 해당 서비스를 복원 처리하면 됩니다.")],-1),us=t("p",null,[t("b",{class:"font18"}," ② 영구삭제"),s(),t("br"),s(" 삭제 버튼과 똑같이 삭제하고자 하는 업무 서비스를 선택한 후 오른쪽 마우스를 클릭하면 Context Menu가 활성 됩니다. 활성 된 메뉴에서 영구삭제를 선택하면 됩니다.")],-1),Bs={class:"custom-container tip"},Rs={class:"custom-container-title"},ws=t("p",null,[s("영구삭제 시에는 "),t("img",{src:a,style:{position:"relative",top:"5px",width:"25px",height:"25px"}}),s("(Recycle)에서 복원이 불가능합니다.")],-1),Es=A('

③ Pex복사
PEX복사 기능은 Interface BOC에 있는 PEX BOC를 간편하게 사용할 수 있도록 지원하는 기능입니다. 다른 업무 서비스에서 해당 서비스를 호출하여 해당 서비스의 결과를 활용하고 싶을 때 사용하는 기능입니다. 복사 처리시 해당 서비스를 호출하기 위해 필요로 하는 정보를 복사합니다.
복사된 서비스 정보를 이용하여 사용하고자 하는 서비스에서 PEX 붙여넣기 하면 됩니다.

4) 서비스 속성 설정

(1) MENU정보
① MENU ID
메뉴의 고유 번호입니다.

(2) 기초정보
① LABEL
해당 서비스의 이름을 입력합니다.

② 서비스 ID
메뉴 안에 있는 서비스의 고유 번호입니다.

',5),Ss={class:"custom-container tip"},ys={class:"custom-container-title"},Ms=t("p",null,"CLASS정보 안에 METHOD명을 입력시 서비스 ID는 입력한 METHOD명으로 자동 입력됩니다.",-1),Ns=A('

③ ALIAS
서비스 ID명 이외 업무 전체적으로 중복이 발생하지 않는 별칭을 할당 하여 사용할 수 있습니다.
해당 ID는 Spring에서 Annotation 호출 명에 중복 방지를 위해서 사용할 수 있습니다.

④ ReadOnly
Tool Box > Users > User Manager의 ReadOnly 여부에 따라 서비스 모델 접근이 됩니다.

⑤ SaveLock
마지막으로 작업한 개발자가 Lock을 YES로 했을 경우 다른 개발자는 Lock 걸려있는데 해당 서비스를 수정하지 못합니다.

',3),Ps={class:"custom-container tip"},Xs={class:"custom-container-title"},Is=t("p",null,"YES로 설정한 개발자가 NO로 변경하지 않아도 Lock은 최대 하루가 지나는 경우 자동으로 NO로 변경이 됩니다.",-1),Us=t("p",null,[t("b",{class:"font18"},"(3) CLASS정보"),s(),t("br")],-1),Ds={class:"custom-container tip"},zs={class:"custom-container-title"},_s=t("p",null,"메뉴에서 CLASS 정보들을 미리 입력하는 경우 추가된 서비스 속성 창에 CLASS 정보들이 자동으로 입력됩니다.",-1),Ys=t("p",null,[t("b",{class:"font18"}," ① PACKAGE명"),s(),t("br"),s(" SYSID는 별도로 해당 프로젝트명을 설정할 경우 SYSID 태그 안에 해당 프로젝트명을 넣어 설정하고 그 이외에는 DEFAULT로 설정됩니다.")],-1),Hs=t("p",null,[t("b",{class:"font18"}," ② CLASS명"),s(),t("br"),s(" 메소드를 분류할 수 있도록 클래스를 입력합니다.")],-1),Gs={class:"custom-container tip"},Qs={class:"custom-container-title"},ks=t("p",null,"해당 정보는 해당 Node의 Child Node가 서비스일 때 유효하며, 프레임워크 특성상 메뉴별 클래스 명은 중복되면 안 됩니다.",-1),Ts=A('

(4) JSP정보
해당 서비스의 출력유형이 JSP일 때 설정이 되어 있는 JSP 파일로 처리 결과를 Forwarding합니다.
① JSP 경로
Return Type이 JSP인 서비스를 소유한 클래스일 때 선택적으로 사용합니다. 단, 해당 정보는 해당 Node의 Child Node가 서비스일 때 유효합니다.

② JSP 파일명
Return Type이 JSP일 때 해당 JSP의 파일명을 입력합니다.

(5) 처리유형
해당 서비스의 출력유형이 JSP일 때 설정이 되어 있는 JSP 파일로 처리 결과를 Forwarding합니다.
① APPL 유형
Default 값은 Online입니다.
Spring + ( Ibatis, Mybatis) 형식에서는 적용되지 않습니다. WizframeWork 사용 시 해당 기능이 유효합니다.

② 출력 유형
Online 화면일 때 서비스 처리 후 결과를 Forward 하는 방식을 정의합니다. JSP 화면을 Forward하고자 할 때에는 JSP를 선택해주고, Ajax를 통하여 Data만 Client로 전송할 때에 XML로 정의하면 됩니다. XML로 처리시에는 Client와 통신하기 위한 Data Layout Interface를 적용하여야 합니다.
해당 요소에서는 XML, Json,formated String 등 다양하게 적용할 수 있습니다.

(6) 최종작업정보
서비스 Model을 변경한 최종 작업일/작업자 정보를 확인할 수 있습니다.
① 작업일
최근에 해당 서비스를 작업한 날짜 정보를 확인할 수 있습니다.

② 작업자ID
최근에 해당 서비스를 작업한 개발자 ID 정보를 확인할 수 있습니다.

(7) Test정보
① TestDB
개발시 개발 DB와 운영 DB가 다를 경우 운영 DB를 등록하여 테스트를 할 수 있습니다.

',7);function Os(Vs,Fs){const i=m("Badge");return x(),C("div",null,[at,e(" Remark "),t("div",rt,[t("p",pt,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),nt]),e(" "),lt,e(" Remark "),t("div",ct,[t("p",dt,[o(i,{type:"tip",text:"Remark",vertical:"middle"}),s(),bt]),ht]),gt,e(" Remark "),t("div",mt,[t("p",xt,[o(i,{type:"tip",text:"Remark",vertical:"middle"}),s(),Ct]),ft]),e(" "),vt,e(" Remark "),t("div",ut,[t("p",Bt,[o(i,{type:"tip",text:"Remark",vertical:"middle"}),s(),Rt,s(),wt]),Et]),e(" "),St,e(" Remark "),t("div",yt,[t("p",Mt,[o(i,{type:"tip",text:"Remark",vertical:"middle"}),s(),Nt,s(),Pt]),Xt]),e(" "),It,e(" Remark "),t("div",Ut,[t("p",Dt,[o(i,{type:"tip",text:"Remark",vertical:"middle"}),s(),zt,s(),_t]),Yt]),e(" "),Ht,e(" Remark "),t("div",Gt,[t("p",Qt,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),kt]),e(" "),Tt,e(" Remark "),t("div",Ot,[t("p",Vt,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),Ft]),e(" "),Kt,e(" Remark "),t("div",jt,[t("p",Lt,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),Wt]),e(" "),qt,e(" Remark "),t("div",Jt,[t("p",Zt,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),$t]),e(" "),ts,ss,e(" Remark "),t("div",es,[t("p",is,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),os]),e(" "),As,e(" Remark "),t("div",as,[t("p",rs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),ps]),e(" "),ns,e(" Remark "),t("div",ls,[t("p",cs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),ds]),e(" "),bs,e(" Remark "),t("div",hs,[t("p",gs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),ms]),e(" "),xs,e(" Remark "),t("div",Cs,[t("p",fs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),vs]),e(" "),us,e(" Remark "),t("div",Bs,[t("p",Rs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),ws]),e(" "),Es,e(" Remark "),t("div",Ss,[t("p",ys,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),Ms]),e(" "),Ns,e(" Remark "),t("div",Ps,[t("p",Xs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),Is]),e(" "),Us,e(" Remark "),t("div",Ds,[t("p",zs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),_s]),e(" "),Ys,Hs,e(" Remark "),t("div",Gs,[t("p",Qs,[o(i,{type:"tip",text:"Remark",vertical:"middle"})]),ks]),e(" "),Ts])}const Ls=g(At,[["render",Os],["__file","Structure.html.vue"]]);export{Ls as default};