SMATR00300_임상약입고등록.xfdl 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMATR00300" position="absolute 0 0 1194 799" titletext="임상약입고등록" oninit="SMATR00300_oninit" onload="SMATR00300_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 45 1194 779" id="group3" scrollbars="autoboth" anchor="all">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 1071 44 1135 66" id="btn_grddel" class="btn2" text="입고삭제" anchor="top right" onclick="group3_btn_grddel_onclick"/>
  11. <Button position="absolute 1004 44 1068 66" id="btn_grdadd" class="btn2" text="입고신규" anchor="top right" onclick="group3_btn_grdadd_onclick"/>
  12. <Button position="absolute 1138 44 1194 66" id="btn_excsave" class="btn7" text="엑셀" anchor="top right" onclick="group3_btn_excsave_onclick"/>
  13. <Grid position="absolute 0 71 1194 731" id="grd_mthdlist" scrollbars="autoboth" binddataset="ds_main_adbmcrin_item" anchor="all" extendsizetype="row" cellsizingtype="both" autoenter="select">
  14. <Formats>
  15. <Format id="default">
  16. <Columns>
  17. <Column size="25" band="left"/>
  18. <Column size="73" band="left"/>
  19. <Column size="0" band="left"/>
  20. <Column size="86" band="left"/>
  21. <Column size="101" band="left"/>
  22. <Column size="99" band="left"/>
  23. <Column size="76" band="left"/>
  24. <Column size="70" band="left"/>
  25. <Column size="94" band="left"/>
  26. <Column size="101"/>
  27. <Column size="65"/>
  28. <Column size="96"/>
  29. <Column size="92"/>
  30. <Column size="90"/>
  31. <Column size="97"/>
  32. <Column size="92"/>
  33. <Column size="57"/>
  34. <Column size="47"/>
  35. <Column size="93"/>
  36. <Column size="125"/>
  37. <Column size="0"/>
  38. <Column size="80"/>
  39. <Column size="100"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. <Column size="0"/>
  43. <Column size="0"/>
  44. <Column size="0"/>
  45. <Column size="0"/>
  46. <Column size="0"/>
  47. <Column size="0"/>
  48. <Column size="0"/>
  49. <Column size="0"/>
  50. <Column size="0"/>
  51. <Column size="0"/>
  52. <Column size="0"/>
  53. <Column size="0"/>
  54. <Column size="0"/>
  55. <Column size="0"/>
  56. </Columns>
  57. <Rows>
  58. <Row size="24" band="head"/>
  59. <Row size="24"/>
  60. </Rows>
  61. <Band id="head">
  62. <Cell/>
  63. <Cell col="1" text="상태"/>
  64. <Cell col="2" text="번호"/>
  65. <Cell col="3" text="약품코드"/>
  66. <Cell col="4" text="연구코드"/>
  67. <Cell col="5" text="과제번호"/>
  68. <Cell col="6" text="진료과"/>
  69. <Cell col="7" text="PI"/>
  70. <Cell col="8" text="의뢰자"/>
  71. <Cell col="9" text="영문상품명"/>
  72. <Cell col="10" text="함량단위"/>
  73. <Cell col="11" text="보관장소"/>
  74. <Cell col="12" text="입고일"/>
  75. <Cell col="13" text="lot number"/>
  76. <Cell col="14" text="유효기간"/>
  77. <Cell col="15" text="재고확인일"/>
  78. <Cell col="16" text="재고량"/>
  79. <Cell col="17" text="단위"/>
  80. <Cell col="18" text="유효기간관리"/>
  81. <Cell col="19" text="유효기간 처리여부"/>
  82. <Cell col="20" text="입고자ID"/>
  83. <Cell col="21" text="입고자명"/>
  84. <Cell col="22" text="비고"/>
  85. <Cell col="23" text="caption1"/>
  86. <Cell col="24" text="checkyn"/>
  87. <Cell col="25"/>
  88. <Cell col="26"/>
  89. <Cell col="27"/>
  90. <Cell col="28"/>
  91. <Cell col="29"/>
  92. <Cell col="30"/>
  93. <Cell col="31"/>
  94. <Cell col="32"/>
  95. <Cell col="33"/>
  96. <Cell col="34"/>
  97. <Cell col="35"/>
  98. <Cell col="36"/>
  99. <Cell col="37"/>
  100. <Cell col="38"/>
  101. </Band>
  102. <Band id="body">
  103. <Cell celltype="head"/>
  104. <Cell col="1" displaytype="combo" edittype="combo" style="padding:0 0 0 3;" text="bind:state" combodataset="ds_cmb_state" combocodecol="value" combodatacol="label" enable="false"/>
  105. <Cell col="2" displaytype="none" edittype="none" text="bind:seq"/>
  106. <Cell col="3" edittype="none" style="align:left top;padding:5 2 0 2;" text="bind:drugcd" wordwrap="char" autosizerow="default"/>
  107. <Cell col="4" edittype="none" style="align:left top;padding:5 2 0 2;" text="bind:stdyno" wordwrap="char" autosizerow="default"/>
  108. <Cell col="5" edittype="none" style="align:left top;padding:5 2 0 2;" text="bind:subjno" wordwrap="char" autosizerow="default"/>
  109. <Cell col="6" edittype="none" style="align:left top;padding:5 2 0 2;" text="bind:deptnm" wordwrap="char" autosizerow="default"/>
  110. <Cell col="7" edittype="none" style="align:left top;padding:5 2 0 2;" text="bind:pi" wordwrap="char" autosizerow="default"/>
  111. <Cell col="8" edittype="none" style="align:left top;padding:5 2 0 2;" text="bind:reqnm" wordwrap="char" autosizerow="default"/>
  112. <Cell col="9" edittype="none" style="align:left top;padding:5 2 0 2;background:#0077ffff;background2:#0077ffff;" text="bind:drugnm" wordwrap="char" autosizerow="default"/>
  113. <Cell col="10" displaytype="text" edittype="text" style="align:left top;padding:5 2 0 2;background:#db7093ff;background2:#db7093ff;" text="bind:cntsunit" wordwrap="char" autosizerow="default"/>
  114. <Cell col="11" displaytype="text" edittype="text" style="align:left top;padding:5 2 0 2;" text="bind:keepplcenm" wordwrap="char" autosizerow="default"/>
  115. <Cell col="12" displaytype="expr:utlf_isNull(drugindd)?&quot;&quot;:&quot;date&quot;" edittype="date" style="background:#ffdc32ff;background2:#ffdc32;" text="bind:drugindd"/>
  116. <Cell col="13" displaytype="text" edittype="text" style="background:#ffdc32ff;background2:#ffdc32;" text="bind:lotno"/>
  117. <Cell col="14" displaytype="expr:utlf_isNull(valitodd)?&quot;&quot;:&quot;date&quot;" edittype="date" style="background:#ffdc32ff;background2:#ffdc32;" text="bind:valitodd"/>
  118. <Cell col="15" displaytype="expr:utlf_isNull(stocnfmdd)?&quot;&quot;:&quot;date&quot;" edittype="date" style="background:#ffdc32ff;background2:#ffdc32;" text="bind:stocnfmdd"/>
  119. <Cell col="16" displaytype="text" edittype="text" style="background:#ffdc32ff;background2:#ffdc32;" text="bind:stocnts"/>
  120. <Cell col="17" displaytype="text" edittype="text" style="background:#ffdc32ff;background2:#ffdc32;" text="bind:stocunit"/>
  121. <Cell col="18" style="background:EXPR(datecheck=='R'?&quot;#FF0000&quot;:datecheck=='G'?&quot;#808080&quot;:&quot;&quot;);background2:EXPR(datecheck=='R'?&quot;#FF0000&quot;:datecheck=='G'?&quot;#808080&quot;:&quot;&quot;);" text="bind:valitoddmt"/>
  122. <Cell col="19" displaytype="combo" edittype="combo" text="bind:valitretyn" combodataset="ds_cmb_valitretyn" combocodecol="value" combodatacol="label"/>
  123. <Cell col="20" text="bind:druginrid"/>
  124. <Cell col="21" edittype="none" text="bind:druginnm"/>
  125. <Cell col="22" displaytype="text" edittype="text" text="bind:cmtcnts"/>
  126. <Cell col="23" text="bind:datecheck"/>
  127. <Cell col="24" text="bind:subjid"/>
  128. <Cell col="25" text="bind:itemnm"/>
  129. <Cell col="26" text="bind:stdysubjnm"/>
  130. <Cell col="27" text="bind:ordnm"/>
  131. <Cell col="28" text="bind:stdytermfrom"/>
  132. <Cell col="29" text="bind:stdytermto"/>
  133. <Cell col="30" text="bind:conyn"/>
  134. <Cell col="31" text="bind:condd"/>
  135. <Cell col="32" text="bind:drugendyn"/>
  136. <Cell col="33" text="bind:drugenddd"/>
  137. <Cell col="34" text="bind:druginrid"/>
  138. <Cell col="35" text="bind:druginnm"/>
  139. <Cell col="36" text="bind:drugqty"/>
  140. <Cell col="37" text="bind:drugintm"/>
  141. <Cell col="38" text="bind:saveflag"/>
  142. </Band>
  143. </Format>
  144. </Formats>
  145. </Grid>
  146. <Shape position="absolute 0 66 1194 72" linetype="horizontal" id="line2" class="line_1" anchor="left top right"/>
  147. <Static text="임상약입고정보 리스트" position="absolute 0 50 192 67" id="caption7" class="tit_2" anchor="default"/>
  148. <Shape position="absolute 0 728 1194 734" linetype="horizontal" id="line1" class="line_3" anchor="left right bottom"/>
  149. <Shape id="line00" class="line_1" position="absolute 0 65 1194 71" anchor="left top right"/>
  150. <Shape id="line03" class="line_1" position="absolute 0 67 1194 73" anchor="left top right"/>
  151. </Layout>
  152. </Layouts>
  153. </Div>
  154. <Static id="caption19" text="임상약입고등록" class="tit_1" position="absolute 0 0 140 25"/>
  155. <Div position="absolute 0 85 1002 112" id="group4" scrollbars="autoboth" anchor="left top right">
  156. <Layouts>
  157. <Layout>
  158. <Button position="absolute 945 4 1001 26" id="button1" class="btn4" text="저장" anchor="top right" onclick="group4_button1_onclick"/>
  159. </Layout>
  160. </Layouts>
  161. </Div>
  162. <Div id="group2" taborder="1" position="absolute 0 25 1194 85" class="div_SA" anchor="left top right">
  163. <Layouts>
  164. <Layout>
  165. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1077 11 1083 52" anchor="top right"/>
  166. <Button id="btn_seamthd" taborder="1" text="조회" class="btn1" position="absolute 1110 20 1166 42" anchor="top right" onclick="group2_btn_seamthd_onclick"/>
  167. <Edit id="ipt_pid1" taborder="2" class="input_default" position="absolute 530 10 638 29" anchor="default" onkeydown="group2_ipt_pid1_onkeydown"/>
  168. <Static id="caption10" text="과제번호 :" class="search_name" position="absolute 435 11 532 28" anchor="default"/>
  169. <Static id="caption1" text="연구코드 :" class="search_name" position="absolute 435 34 526 51" anchor="default"/>
  170. <Edit id="ipt_pid2" taborder="3" class="input_default" position="absolute 530 33 638 52" anchor="default" onkeydown="group2_ipt_pid2_onkeydown"/>
  171. <Static id="caption2" text="약품명 :" class="search_name" position="absolute 755 34 848 51" anchor="default"/>
  172. <Static id="caption4" text="약품코드 :" class="search_name" position="absolute 755 11 852 28" anchor="default"/>
  173. <Edit id="input1" taborder="4" class="input_default" position="absolute 850 10 963 29" anchor="default" onkeydown="group2_input1_onkeydown"/>
  174. <Edit id="input2" taborder="5" class="input_default" position="absolute 850 33 963 52" anchor="default"/>
  175. <Static id="caption11" text="~" class="search_n_b" position="absolute 217 11 229 28" anchor="default"/>
  176. <Static id="caption3" text="입고일자 :" class="search_name" position="absolute 15 11 163 28" anchor="default"/>
  177. <Calendar id="ipt_pid3" taborder="6" class="input_s_essential" position="absolute 112 10 212 29" anchor="default"/>
  178. <Calendar id="ipt_pid4" taborder="7" class="input_s_essential" position="absolute 234 10 334 29" anchor="default"/>
  179. </Layout>
  180. </Layouts>
  181. </Div>
  182. </Layout>
  183. </Layouts>
  184. <Objects>
  185. <Dataset id="ds_main_adbmcrin_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_adbmcrin_item_oncolumnchanged">
  186. <ColumnInfo>
  187. <Column id="state" type="STRING"/>
  188. <Column id="seq" type="STRING"/>
  189. <Column id="drugcd" type="STRING"/>
  190. <Column id="stdyno" type="STRING"/>
  191. <Column id="subjno" type="STRING"/>
  192. <Column id="deptnm" type="STRING"/>
  193. <Column id="pi" type="STRING"/>
  194. <Column id="reqnm" type="STRING"/>
  195. <Column id="drugnm" type="STRING"/>
  196. <Column id="cntsunit" type="STRING"/>
  197. <Column id="keepplcenm" type="STRING"/>
  198. <Column id="drugindd" type="STRING"/>
  199. <Column id="lotno" type="STRING"/>
  200. <Column id="valitodd" type="STRING"/>
  201. <Column id="stocnfmdd" type="STRING"/>
  202. <Column id="stocnts" type="STRING"/>
  203. <Column id="stocunit" type="STRING"/>
  204. <Column id="valitoddmt" type="STRING"/>
  205. <Column id="valitretyn" type="STRING"/>
  206. <Column id="druginrid" type="STRING"/>
  207. <Column id="druginnm" type="STRING"/>
  208. <Column id="cmtcnts" type="STRING"/>
  209. <Column id="datecheck" type="STRING"/>
  210. <Column id="subjid" type="STRING"/>
  211. <Column id="itemnm" type="STRING"/>
  212. <Column id="stdysubjnm" type="STRING"/>
  213. <Column id="ordnm" type="STRING"/>
  214. <Column id="stdytermfrom" type="STRING"/>
  215. <Column id="stdytermto" type="STRING"/>
  216. <Column id="conyn" type="STRING"/>
  217. <Column id="condd" type="STRING"/>
  218. <Column id="drugendyn" type="STRING"/>
  219. <Column id="drugenddd" type="STRING"/>
  220. <Column id="druginrid" type="STRING"/>
  221. <Column id="druginnm" type="STRING"/>
  222. <Column id="drugqty" type="STRING"/>
  223. <Column id="drugintm" type="STRING"/>
  224. <Column id="saveflag" type="STRING"/>
  225. </ColumnInfo>
  226. </Dataset>
  227. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  228. <ColumnInfo>
  229. <Column id="subjectno" type="STRING" size="256"/>
  230. <Column id="stdyno" type="STRING" size="256"/>
  231. <Column id="drugindd" type="STRING" size="256"/>
  232. <Column id="drugintm" type="STRING" size="256"/>
  233. <Column id="drugcd" type="STRING" size="256"/>
  234. <Column id="drugnm" type="STRING" size="256"/>
  235. </ColumnInfo>
  236. <Rows>
  237. <Row>
  238. <Col id="subjectno"/>
  239. <Col id="stdyno"/>
  240. <Col id="drugindd"/>
  241. <Col id="drugintm"/>
  242. <Col id="drugcd"/>
  243. <Col id="drugnm"/>
  244. </Row>
  245. </Rows>
  246. </Dataset>
  247. <Dataset id="ds_send_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  248. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  249. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  250. <Dataset id="ds_cmb_state" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  251. <ColumnInfo>
  252. <Column id="label" type="STRING" size="256"/>
  253. <Column id="value" type="STRING" size="256"/>
  254. </ColumnInfo>
  255. <Rows>
  256. <Row>
  257. <Col id="label">입고신규</Col>
  258. <Col id="value">i</Col>
  259. </Row>
  260. <Row>
  261. <Col id="label">재고변경</Col>
  262. <Col id="value">u</Col>
  263. </Row>
  264. <Row>
  265. <Col id="label">-</Col>
  266. <Col id="value">-</Col>
  267. </Row>
  268. </Rows>
  269. </Dataset>
  270. <Dataset id="ds_cmb_valitretyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  271. <ColumnInfo>
  272. <Column id="label" type="STRING" size="256"/>
  273. <Column id="value" type="STRING" size="256"/>
  274. </ColumnInfo>
  275. <Rows>
  276. <Row>
  277. <Col id="label">Y</Col>
  278. <Col id="value">Y</Col>
  279. </Row>
  280. <Row>
  281. <Col id="label">N</Col>
  282. <Col id="value">N</Col>
  283. </Row>
  284. </Rows>
  285. </Dataset>
  286. <Dataset id="ds_send_save" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  287. </Objects>
  288. <Bind>
  289. <BindItem id="item0" compid="group2.input1" propid="value" datasetid="ds_main_cond" columnid="drugcd"/>
  290. <BindItem id="item1" compid="group2.input2" propid="value" datasetid="ds_main_cond" columnid="drugnm"/>
  291. <BindItem id="item2" compid="group2.ipt_pid1" propid="value" datasetid="ds_main_cond" columnid="subjectno"/>
  292. <BindItem id="item3" compid="group2.ipt_pid2" propid="value" datasetid="ds_main_cond" columnid="stdyno"/>
  293. <BindItem id="item4" compid="group2.ipt_pid4" propid="value" datasetid="ds_main_cond" columnid="drugintm"/>
  294. <BindItem id="item5" compid="group2.ipt_pid3" propid="value" datasetid="ds_main_cond" columnid="drugindd"/>
  295. </Bind>
  296. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  297. * System Name :
  298. * Job Name :
  299. * Creator :
  300. * Make Date : 2015-11-13
  301. * Description :
  302. *---------------------------------------------------------------------------------------
  303. * Modify Date Modifier Modify Description
  304. *---------------------------------------------------------------------------------------
  305. * 2015-11-13 Live Converter TF->XP
  306. *
  307. *---------------------------------------------------------------------------------------
  308. ****************************************************************************************/
  309. //=======================================================================================
  310. // Lib Include
  311. //---------------------------------------------------------------------------------------
  312. include "com_commonxp::comm_main.xjs"
  313. //=======================================================================================
  314. // Global Form Variable
  315. //---------------------------------------------------------------------------------------
  316. var arErrorCode = new HashArray();
  317. //=======================================================================================
  318. // Function
  319. //---------------------------------------------------------------------------------------
  320. /****************************************************************************************
  321. * Argument : N/A
  322. * Description :
  323. ****************************************************************************************/
  324. function fGetClincDrugWIn(){
  325. ds_send_search.copyData(ds_main_cond);
  326. // initGridStyle("grd_mthdlist");
  327. ds_send_search.updateColID("subjectno","srchsubjno");
  328. ds_send_search.updateColID("drugindd" ,"srchfromdd");
  329. ds_send_search.updateColID("drugintm" ,"srchtodd");
  330. var oParam = {};
  331. oParam.id = "TRATR00301";
  332. oParam.service = "crccbaseapp.CrccBase";
  333. oParam.method = "reqGetClincDrugWIn";
  334. oParam.inds = "req=ds_send_search";
  335. oParam.outds = "ds_main_adbmcrin_item=adbmcrin";
  336. oParam.async = false;
  337. oParam.callback = "cf_TRATR00301";
  338. tranf_submit(oParam);
  339. for(var i = 0; i < ds_main_adbmcrin_item.rowcount; i++) {
  340. if(ds_main_adbmcrin_item.getColumn(i,"datecheck") == "R"){
  341. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("valitoddmt")) = "#FF0000";
  342. ds_main_adbmcrin_item.setColumn(i,"valitoddmt", "도래");
  343. }else if(ds_main_adbmcrin_item.getColumn(i,"datecheck") == "G"){
  344. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("valitoddmt")) = "#808080";
  345. ds_main_adbmcrin_item.setColumn(i,"valitoddmt", "경과");
  346. }
  347. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("drugindd")) = "#ffdc32";
  348. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("lotno")) = "#ffdc32";
  349. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("valitodd")) = "#ffdc32";
  350. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("stocnfmdd")) = "#ffdc32";
  351. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("stocnts")) = "#ffdc32";
  352. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("stocunit")) = "#ffdc32";
  353. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("cntsunit")) = "#db7093";
  354. // grd_mthdlist.cellStyle("background-color", i, grd_mthdlist.colRef("drugnm")) = "#0077ff";
  355. }
  356. }
  357. function cf_TRATR00301(sSvcId, nErrorCode, sErrorMsg) {
  358. if(nErrorCode < 0) return;
  359. ds_main_adbmcrin_item.updatecontrol = false;
  360. dsf_setDefaultVal(ds_main_adbmcrin_item, "state:-");
  361. ds_main_adbmcrin_item.updatecontrol = true;
  362. }
  363. //=======================================================================================
  364. // Event
  365. //---------------------------------------------------------------------------------------
  366. /****************************************************************************************
  367. * Components : Form
  368. * Components ID : SMATR00300
  369. * Event : oninit
  370. * Argument : 01.obj : Object Event has occurred
  371. * : 02.e : Event Object
  372. * Description : 화면 처음 초기화시 폼초기화
  373. ****************************************************************************************/
  374. function SMATR00300_oninit(obj:Form, e:InitEventInfo)
  375. {
  376. frmf_initForm(obj); // 폼 초기화
  377. }
  378. /****************************************************************************************
  379. * Components : Form
  380. * Components ID : SMATR00300
  381. * Event : onload
  382. * Argument : 01.obj : Object Event has occurred
  383. * : 02.e : Event Object
  384. * Description : 화면 처음 초기화시 폼초기화
  385. ****************************************************************************************/
  386. function SMATR00300_onload(obj:Form, e:LoadEventInfo)
  387. {
  388. grdf_setGridSort(group3.grd_mthdlist); // 그리드 소트만
  389. grdf_setRowTypeIcon(group3.grd_mthdlist, 0); // 그리드 상태 표시
  390. var addDate = new Date();
  391. var curdate = utlf_getCurrentDate().toDate("YYYYMMDD").getAddDate(-1, "M");
  392. ds_main_cond.setColumn(0,"drugindd", curdate.getDateFormat("YYYYMMDD") ); // 날짜 초기값 세팅
  393. ds_main_cond.setColumn(0,"drugintm", utlf_getCurrentDate()); //날짜 초기값 세팅
  394. //opener 화면에서 파라메터값을 넘겨주면, 해당 조건으로 검색하도록 추가 (2009.09.28 JJE)
  395. if( !utlf_isNull(frmf_getOpenerUID()) ){ //Opener의 UID가 존재하면,
  396. var param_subjno = opener.frmf_getParameter("param_subjno");
  397. var param_stdyno = opener.frmf_getParameter("param_stdyno");
  398. var param_drugcd = opener.frmf_getParameter("param_drugcd");
  399. var param_drugnm = opener.frmf_getParameter("param_drugnm");
  400. if( !utlf_isNull(param_subjno) ) ds_main_cond.setColumn(0,"subjectno", param_subjno);
  401. if( !utlf_isNull(param_stdyno) ) ds_main_cond.setColumn(0,"stdyno" , param_stdyno);
  402. if( !utlf_isNull(param_drugcd) ) ds_main_cond.setColumn(0,"drugcd" , param_drugcd);
  403. if( !utlf_isNull(param_drugnm) ) ds_main_cond.setColumn(0,"drugnm" , param_drugnm);
  404. }
  405. fGetClincDrugWIn();
  406. }
  407. /****************************************************************************************
  408. * Components : Button
  409. * Components ID : group2.btn_seamthd
  410. * Event : onclick
  411. * Argument : 01.obj : Object Event has occurred
  412. * : 02.e : Event Object
  413. * Description : 조회
  414. ****************************************************************************************/
  415. function group2_btn_seamthd_onclick(obj:Button, e:ClickEventInfo)
  416. {
  417. fGetClincDrugWIn();
  418. }
  419. /****************************************************************************************
  420. * Components : Edit
  421. * Components ID : group2.ipt_pid1
  422. * Event : onkeydown
  423. * Argument : 01.obj : Object Event has occurred
  424. * : 02.e : Event Object
  425. * Description : 과제번호 입력으로 조회
  426. ****************************************************************************************/
  427. function group2_ipt_pid1_onkeydown(obj:Edit, e:KeyEventInfo)
  428. {
  429. if(e.keycode == 13) {
  430. obj.updateToDataset();
  431. fGetClincDrugWIn();
  432. }
  433. }
  434. /****************************************************************************************
  435. * Components : Edit
  436. * Components ID : group2.input1
  437. * Event : onkeydown
  438. * Argument : 01.obj : Object Event has occurred
  439. * : 02.e : Event Object
  440. * Description : 약품코드 입력으로 조회
  441. ****************************************************************************************/
  442. function group2_input1_onkeydown(obj:Edit, e:KeyEventInfo)
  443. {
  444. if(e.keycode == 13) {
  445. obj.updateToDataset();
  446. fGetClincDrugWIn();
  447. }
  448. }
  449. /****************************************************************************************
  450. * Components : Edit
  451. * Components ID : group2.ipt_pid2
  452. * Event : onkeydown
  453. * Argument : 01.obj : Object Event has occurred
  454. * : 02.e : Event Object
  455. * Description : 연구코드 입력으로 조회
  456. ****************************************************************************************/
  457. function group2_ipt_pid2_onkeydown(obj:Edit, e:KeyEventInfo)
  458. {
  459. if(e.keycode == 13) {
  460. obj.updateToDataset();
  461. fGetClincDrugWIn();
  462. }
  463. }
  464. /****************************************************************************************
  465. * Components : Dataset
  466. * Components ID : ds_main_adbmcrin_item
  467. * Event : oncolumnchanged
  468. * Argument : 01.obj : Object Event has occurred
  469. * : 02.e : Event Object
  470. * Description : 임상약입고정보리스트 변경시 상태값 변경
  471. ****************************************************************************************/
  472. function ds_main_adbmcrin_item_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  473. {
  474. if(e.row > -1) {
  475. if( !utlf_isNull(obj.getColumn(e.row,"seq")) ){
  476. if( e.columnid == "stocnts" ){
  477. ds_main_adbmcrin_item.setColumn(e.row,"state", "u");
  478. }
  479. }else{
  480. if( (e.columnid == "drugindd") && !utlf_isNull(ds_main_adbmcrin_item.getColumn(e.row,"drugindd")) ){
  481. ds_main_adbmcrin_item.setColumn(e.row,"state", "i");
  482. }
  483. }
  484. }
  485. }
  486. /****************************************************************************************
  487. * Components : Button
  488. * Components ID : group3.btn_grdadd
  489. * Event : onclick
  490. * Argument : 01.obj : Object Event has occurred
  491. * : 02.e : Event Object
  492. * Description : 입고신규
  493. ****************************************************************************************/
  494. function group3_btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  495. {
  496. if(ds_main_adbmcrin_item.rowposition < 0) {
  497. alert("추가할 임상약품을 선택하십시오. ");
  498. return;
  499. }
  500. var i = ds_main_adbmcrin_item.rowposition;
  501. var y = ds_main_adbmcrin_item.rowposition+1;
  502. ds_main_adbmcrin_item.insertRow(y);
  503. // 가지고 온 값을 선택한 로우 아래에 넣는다.
  504. ds_main_adbmcrin_item.setColumn(y,"state" , "i"); //입고신규 화면 표시
  505. ds_main_adbmcrin_item.setColumn(y,"drugcd" , ds_main_adbmcrin_item.getColumn(i,"drugcd"));
  506. ds_main_adbmcrin_item.setColumn(y,"stdyno" , ds_main_adbmcrin_item.getColumn(i,"stdyno"));
  507. ds_main_adbmcrin_item.setColumn(y,"subjno" , ds_main_adbmcrin_item.getColumn(i,"subjno"));
  508. ds_main_adbmcrin_item.setColumn(y,"deptnm" , ds_main_adbmcrin_item.getColumn(i,"deptnm"));
  509. ds_main_adbmcrin_item.setColumn(y,"pi" , ds_main_adbmcrin_item.getColumn(i,"pi"));
  510. ds_main_adbmcrin_item.setColumn(y,"reqnm" , ds_main_adbmcrin_item.getColumn(i,"reqnm"));
  511. ds_main_adbmcrin_item.setColumn(y,"drugcd" , ds_main_adbmcrin_item.getColumn(i,"drugcd"));
  512. ds_main_adbmcrin_item.setColumn(y,"drugnm" , ds_main_adbmcrin_item.getColumn(i,"drugnm"));
  513. ds_main_adbmcrin_item.setColumn(y,"subjid" , ds_main_adbmcrin_item.getColumn(i,"subjid"));
  514. ds_main_adbmcrin_item.setColumn(y,"cntsunit" , ds_main_adbmcrin_item.getColumn(i,"cntsunit"));
  515. ds_main_adbmcrin_item.setColumn(y,"keepplcenm" , ds_main_adbmcrin_item.getColumn(i,"keepplcenm"));
  516. }
  517. /****************************************************************************************
  518. * Components : Button
  519. * Components ID : group3.btn_grddel
  520. * Event : onclick
  521. * Argument : 01.obj : Object Event has occurred
  522. * : 02.e : Event Object
  523. * Description : 입고삭제
  524. ****************************************************************************************/
  525. function group3_btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  526. {
  527. var iRow = ds_main_adbmcrin_item.rowposition;
  528. ds_main_adbmcrin_item.updatecontrol = false;
  529. if(ds_main_adbmcrin_item.getRowType(iRow) == 2){ //insert상태
  530. ds_main_adbmcrin_item.deleteRow(iRow);
  531. } else if(ds_main_adbmcrin_item.getRowType(iRow) == 8){ //delete상태
  532. ds_main_adbmcrin_item.setRowType(iRow,1); //삭제 취소 처리
  533. } else{
  534. if(utlf_isNull(ds_main_adbmcrin_item.getColumn(iRow,"seq"))){
  535. ds_main_adbmcrin_item.setColumn(iRow,"state", "-");
  536. ds_main_adbmcrin_item.setRowType(iRow,1);
  537. }else{
  538. ds_main_adbmcrin_item.setRowType(iRow,8);
  539. }
  540. }
  541. ds_main_adbmcrin_item.updatecontrol = true;
  542. }
  543. /****************************************************************************************
  544. * Components : Button
  545. * Components ID : group3.btn_excsave
  546. * Event : onclick
  547. * Argument : 01.obj : Object Event has occurred
  548. * : 02.e : Event Object
  549. * Description : 엑셀저장
  550. ****************************************************************************************/
  551. function group3_btn_excsave_onclick(obj:Button, e:ClickEventInfo)
  552. {
  553. if( ds_main_adbmcrin_item.rowcount > 0 ){
  554. grdf_exportExcel(group3.grd_mthdlist, "임상약입고등록", "임상약입고등록", false, "", "user", false);
  555. } else {
  556. sysf_messageBox("조회된 데이터가 ", "I004");
  557. }
  558. }
  559. /****************************************************************************************
  560. * Components : Button
  561. * Components ID : group4.button1
  562. * Event : onclick
  563. * Argument : 01.obj : Object Event has occurred
  564. * : 02.e : Event Object
  565. * Description : 저장
  566. ****************************************************************************************/
  567. function group4_button1_onclick(obj:Button, e:ClickEventInfo)
  568. {
  569. // 행추가를 했을시 입고일자가 null 일경우 현재일자로, 유효기간처리여부는 N으로
  570. var curdate = utlf_getCurrentDate().toDate("YYYYMMDD");
  571. var cntv = "0";
  572. var cntsunitFlag = "N"; // 함량단위 존재유무 flag
  573. for(var i = 0; i < ds_main_adbmcrin_item.rowcount; i++) {
  574. if((ds_main_adbmcrin_item.getRowType(i) == 2 || ds_main_adbmcrin_item.getRowType(i) == 4) && utlf_isNull(ds_main_adbmcrin_item.getColumn(i,"valitretyn"))){
  575. ds_main_adbmcrin_item.setColumn(i,"valitretyn", "N");
  576. }
  577. if((ds_main_adbmcrin_item.getRowType(i) == 2 || ds_main_adbmcrin_item.getRowType(i) == 4) && utlf_isNull(ds_main_adbmcrin_item.getColumn(i,"drugindd"))){
  578. ds_main_adbmcrin_item.setColumn(i,"drugindd", curdate.getDateFormat("YYYYMMDD"));
  579. }
  580. // 2009.12.08_노동우_유효기간처리여부가 Y 일때 유효기간이 실지로 현재 날짜보다 3개월 이전인지 확인
  581. if(ds_main_adbmcrin_item.getColumn(i,"valitretyn") == "Y") {
  582. var vdd = ds_main_adbmcrin_item.getColumn(i,"valitodd");
  583. var vddf = vdd.toDate().getAddDate(90);
  584. if(vddf.getDateFormat() >= curdate.getDateFormat("YYYYMMDD")) {
  585. cntv = parseInt(cntv)+1;
  586. }
  587. }
  588. // 2009.12.10_노동우_함량단위 존재 유무 체크
  589. if(ds_main_adbmcrin_item.getColumn(i,"state") == "i" && utlf_isNull(ds_main_adbmcrin_item.getColumn(i,"cntsunit"))) {
  590. cntsunitFlag = "Y";
  591. }
  592. }
  593. if(cntv > 0) {
  594. sysf_messageBox("유효기간이 3개월 경과되지 않은 건이 존재합니다.","E");
  595. fGetClincDrugWIn();
  596. } else {
  597. var update = grdf_getGridUpdateData(group3.grd_mthdlist, "all");
  598. grdf_setStatusColumn(update, "m");
  599. ds_send_save.copyData(update,true);
  600. if(cntsunitFlag == "Y") {
  601. sysf_messageBox("함량단위는","I003");
  602. } else {
  603. //저장후 성공하면 재 조회
  604. var oParam = {};
  605. oParam.id = "TXATR00301";
  606. oParam.service = "crccbaseapp.CrccBase";
  607. oParam.method = "reqExeClincDrugWIn";
  608. oParam.inds = "save=ds_send_save";
  609. //oParam.outds = "ds_main_adbmcrin=adbmcrin";
  610. oParam.async = false;
  611. oParam.callback = "cf_TXATR00301";
  612. tranf_submit(oParam);
  613. if(arErrorCode.pop("TXATR00301") > -1) {
  614. fGetClincDrugWIn();
  615. }
  616. }
  617. }
  618. }
  619. function cf_TXATR00301(sSvcId, nErrorCode, sErrorMsg) {
  620. arErrorCode.push(sSvcId, nErrorCode);
  621. }
  622. ]]></Script>
  623. </Form>
  624. </FDL>