SMMMO18000_협진환자리스트.xfdl 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMMO18000" position="absolute 0 0 1175 778" titletext="협진환자리스트" oninit="SMMMO18000_oninit" onload="SMMMO18000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="협진환자리스트" position="absolute 0 0 119 25" id="caption6" class="tit_1"/>
  8. <Static text="협진환자리스트" position="absolute 0 96 126 116" align="align:center middle;" id="caption3" class="tit_2"/>
  9. <Grid position="absolute 0 116 1175 748" id="grd_cnstlist" binddataset="ds_grd_cnstlist" taborder="4" anchor="all">
  10. <Formats>
  11. <Format id="default">
  12. <Columns>
  13. <Column size="22"/>
  14. <Column size="86"/>
  15. <Column size="65"/>
  16. <Column size="59"/>
  17. <Column size="69"/>
  18. <Column size="100"/>
  19. <Column size="194"/>
  20. <Column size="175"/>
  21. <Column size="54"/>
  22. <Column size="154"/>
  23. <Column size="170"/>
  24. <Column size="198"/>
  25. <Column size="0"/>
  26. <Column size="0"/>
  27. <Column size="0"/>
  28. <Column size="0"/>
  29. <Column size="0"/>
  30. <Column size="0"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="0"/>
  36. <Column size="0"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. <Column size="0"/>
  43. <Column size="0"/>
  44. <Column size="0"/>
  45. </Columns>
  46. <Rows>
  47. <Row size="24" band="head"/>
  48. <Row size="24"/>
  49. </Rows>
  50. <Band id="head">
  51. <Cell displaytype="checkbox" edittype="checkbox"/>
  52. <Cell col="1" text="협진일"/>
  53. <Cell col="2" text="병실"/>
  54. <Cell col="3" text="성명"/>
  55. <Cell col="4" text="성별/나이"/>
  56. <Cell col="5" text="상정과"/>
  57. <Cell col="6" text="진단명"/>
  58. <Cell col="7" text="부진단명"/>
  59. <Cell col="8" text="ECOG"/>
  60. <Cell col="9" text="병기"/>
  61. <Cell col="10" text="흡연력"/>
  62. <Cell col="11" text="회의제목"/>
  63. <Cell col="12" text="회의일시"/>
  64. <Cell col="13" text="회의장소"/>
  65. <Cell col="14" text="회의내용"/>
  66. <Cell col="15" text="결과"/>
  67. <Cell col="16" text="상정이유"/>
  68. <Cell col="17" text="작성자"/>
  69. <Cell col="18"/>
  70. <Cell col="19"/>
  71. <Cell col="20"/>
  72. <Cell col="21"/>
  73. <Cell col="22"/>
  74. <Cell col="23"/>
  75. <Cell col="24"/>
  76. <Cell col="25"/>
  77. <Cell col="26"/>
  78. <Cell col="27"/>
  79. <Cell col="28"/>
  80. <Cell col="29"/>
  81. <Cell col="30"/>
  82. <Cell col="31"/>
  83. </Band>
  84. <Band id="body">
  85. <Cell displaytype="checkbox" edittype="checkbox" text="bind:checkyn"/>
  86. <Cell col="1" style="align:left middle;" text="bind:confdd" mask="####-##-##"/>
  87. <Cell col="2" style="align:left middle;" text="bind:roomcd"/>
  88. <Cell col="3" style="align:left middle;" text="bind:hngnm"/>
  89. <Cell col="4" style="align:left middle;" text="bind:sa"/>
  90. <Cell col="5" style="align:left middle;" text="bind:orddeptnm"/>
  91. <Cell col="6" style="align:left middle;" text="bind:diagnm"/>
  92. <Cell col="7" style="align:left middle;" text="bind:subdiagnm"/>
  93. <Cell col="8" style="align:left middle;" text="bind:ecogscale"/>
  94. <Cell col="9" style="align:left middle;" text="bind:stage"/>
  95. <Cell col="10" style="align:left middle;" text="bind:smokcnts"/>
  96. <Cell col="11" style="align:left middle;" text="bind:conftitl"/>
  97. <Cell col="12" text="bind:confplce"/>
  98. <Cell col="13" text="bind:confcnts"/>
  99. <Cell col="14" text="bind:pid"/>
  100. <Cell col="15" text="bind:orddeptcd"/>
  101. <Cell col="16" text="bind:orddrnm"/>
  102. <Cell col="17" text="bind:orddrid"/>
  103. <Cell col="18" text="bind:orgdiagcd"/>
  104. <Cell col="19" text="bind:stagecd"/>
  105. <Cell col="20" text="bind:tnmcd1"/>
  106. <Cell col="21" text="bind:tnmcd2"/>
  107. <Cell col="22" text="bind:tnmcd3"/>
  108. <Cell col="23" text="bind:asumresn"/>
  109. <Cell col="24" text="bind:rsltcnts"/>
  110. <Cell col="25" text="bind:writid"/>
  111. <Cell col="26" text="bind:writnm"/>
  112. <Cell col="27" text="bind:smokday"/>
  113. <Cell col="28" text="bind:smokyear"/>
  114. <Cell col="29" text="bind:smokyn"/>
  115. <Cell col="30" text="bind:smokstrtyear"/>
  116. <Cell col="31" text="bind:smokendyear"/>
  117. </Band>
  118. </Format>
  119. </Formats>
  120. </Grid>
  121. <Button position="absolute 0 756 58 778" id="btn_print" class="btn6" text="출력" onclick="btn_print_onclick" taborder="3" anchor="left bottom"/>
  122. <Button position="absolute 1119 756 1175 778" id="button1" class="btn3" text="닫기" onclick="button1_onclick" taborder="2" anchor="right bottom"/>
  123. <Div id="roundrect1" taborder="0" position="absolute 0 25 1175 87" class="div_SA" anchor="left top right">
  124. <Layouts>
  125. <Layout>
  126. <Static id="caption5" text="협진일" class="search_name" position="absolute 8 8 84 28" anchor="default"/>
  127. <Static id="caption8" text="상 정 과" class="search_name" position="absolute 487 8 563 28" anchor="default"/>
  128. <Calendar id="input4" taborder="0" class="input" position="absolute 86 8 176 28" anchor="default" dateformat="yyyy-MM-dd" value="null" autoselect="true" autoskip="true"/>
  129. <Static id="caption29" text="진 료 의" class="search_name" position="absolute 802 8 878 28" anchor="default"/>
  130. <Edit id="ipt_pid" taborder="5" class="input_search" position="absolute 565 34 655 54" anchor="default" onkeydown="roundrect1_ipt_pid_onkeydown" autoselect="true"/>
  131. <Static id="caption4" text="환 자 명" class="search_name" position="absolute 802 34 878 54" anchor="default"/>
  132. <Edit id="input1" taborder="6" class="input_search" position="absolute 880 34 970 54" anchor="default" onkeydown="roundrect1_input1_onkeydown" autoselect="true"/>
  133. <Static id="caption1" text="등록번호" class="search_name" position="absolute 487 34 563 54" anchor="default"/>
  134. <Calendar id="input2" taborder="1" class="input" position="absolute 193 8 283 28" anchor="default" dateformat="yyyy-MM-dd" value="null" autoselect="true"/>
  135. <Button id="btn_prcpclsnm" taborder="7" class="icon_search" position="absolute 977 34 997 54" anchor="default" onclick="roundrect1_btn_prcpclsnm_onclick"/>
  136. <Static id="caption9" text="~" position="absolute 180 8 187 28" anchor="default"/>
  137. <Combo id="cmb_orddept" taborder="3" innerdataset="ds_orddept" codecolumn="deptcd" datacolumn="depthngnm" class="combo_search" position="absolute 565 8 715 28" anchor="default" onitemchanged="roundrect1_cmb_orddept_onitemchanged"/>
  138. <Combo id="cmb_orddrid" taborder="4" innerdataset="@ds_userlist" codecolumn="userid" datacolumn="usernm" class="combo_default" position="absolute 880 8 970 28" anchor="default"/>
  139. <Combo id="cmb_prid" taborder="2" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 290 8 345 28" anchor="default" onitemchanged="roundrect1_cmb_prid_onitemchanged">
  140. <Dataset id="innerdataset">
  141. <ColumnInfo>
  142. <Column id="codecolumn"/>
  143. <Column id="datacolumn"/>
  144. </ColumnInfo>
  145. <Rows>
  146. <Row>
  147. <Col id="codecolumn">3M</Col>
  148. <Col id="datacolumn">3개월</Col>
  149. </Row>
  150. <Row>
  151. <Col id="codecolumn">6M</Col>
  152. <Col id="datacolumn">6개월</Col>
  153. </Row>
  154. <Row>
  155. <Col id="codecolumn">9M</Col>
  156. <Col id="datacolumn">9개월</Col>
  157. </Row>
  158. <Row>
  159. <Col id="codecolumn">1Y</Col>
  160. <Col id="datacolumn">1년</Col>
  161. </Row>
  162. <Row>
  163. <Col id="codecolumn">2Y</Col>
  164. <Col id="datacolumn">2년</Col>
  165. </Row>
  166. </Rows>
  167. </Dataset>
  168. </Combo>
  169. <Button id="btn_req" taborder="8" text="조회" class="btn1" position="absolute 1104 21 1160 41" anchor="top right" onclick="roundrect1_btn_req_onclick"/>
  170. </Layout>
  171. </Layouts>
  172. </Div>
  173. </Layout>
  174. </Layouts>
  175. <Objects>
  176. <Dataset id="ds_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  177. <ColumnInfo>
  178. <Column id="depthngnm" type="STRING"/>
  179. <Column id="deptcd" type="STRING"/>
  180. </ColumnInfo>
  181. </Dataset>
  182. <Dataset id="ds_userlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  183. <ColumnInfo>
  184. <Column id="usernm" type="STRING"/>
  185. <Column id="userid" type="STRING"/>
  186. </ColumnInfo>
  187. </Dataset>
  188. <Dataset id="ds_grd_cnstlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  189. <ColumnInfo>
  190. <Column id="checkyn" type="STRING" size="256" sumtext="처리구분"/>
  191. <Column id="genrdd" type="STRING" size="256" sumtext="발생일자"/>
  192. <Column id="genrno" type="STRING" size="256" sumtext="발생번호"/>
  193. <Column id="confrecno" type="INT" size="256" sumtext="회의기록번호"/>
  194. <Column id="confdd" type="STRING" size="256" sumtext="회의일자"/>
  195. <Column id="conftm" type="STRING" size="256" sumtext="회의시간"/>
  196. <Column id="diagcd" type="STRING" size="256" sumtext="진단코드"/>
  197. <Column id="diagnm" type="STRING" size="256" sumtext="진단명"/>
  198. <Column id="smokhist" type="STRING" size="256" sumtext="흡연력"/>
  199. <Column id="ecogscale" type="STRING" size="256" sumtext="ECOGSCALE"/>
  200. <Column id="conftitl" type="STRING" size="256" sumtext="회의제목"/>
  201. <Column id="confplce" type="STRING" size="256" sumtext="회의장소"/>
  202. <Column id="confcnts" type="STRING" size="256" sumtext="회의내용"/>
  203. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  204. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  205. <Column id="sa" type="STRING" size="256" sumtext="성별"/>
  206. <Column id="roomcd" type="STRING" size="256" sumtext="병실코드"/>
  207. <Column id="orddeptnm" type="STRING" size="256" sumtext="진료과"/>
  208. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  209. <Column id="orddrnm" type="STRING" size="256" sumtext="진료의"/>
  210. <Column id="orddrid" type="STRING" size="256" sumtext="진료의ID"/>
  211. <Column id="orgdiagcd" type="STRING" size="256" sumtext="원진단코드"/>
  212. <Column id="stage" type="STRING" size="256" sumtext="STAGE"/>
  213. <Column id="stagecd" type="STRING" size="256" sumtext="STAGE코드"/>
  214. <Column id="tnmcd1" type="STRING" size="256" sumtext="TNM코드1"/>
  215. <Column id="tnmcd2" type="STRING" size="256" sumtext="TNM코드1"/>
  216. <Column id="tnmcd3" type="STRING" size="256" sumtext="TNM코드1"/>
  217. <Column id="asumresn" type="STRING" size="256" sumtext="상정이유"/>
  218. <Column id="rsltcnts" type="STRING" size="256" sumtext="결과"/>
  219. <Column id="writid" type="STRING" size="256" sumtext="작성자ID"/>
  220. <Column id="writnm" type="STRING" size="256" sumtext="작성자명"/>
  221. <Column id="smokcnts" type="STRING" size="256" sumtext="흡연정보"/>
  222. <Column id="smokday" type="STRING" size="256" sumtext="하루흡연량"/>
  223. <Column id="smokyear" type="STRING" size="256" sumtext="흡연지속년수"/>
  224. <Column id="smokyn" type="STRING" size="256" sumtext="흡연여부"/>
  225. <Column id="smokstrtyear" type="STRING" size="256" sumtext="흡연시작년도"/>
  226. <Column id="smokendyear" type="STRING" size="256" sumtext="흡연중단연도"/>
  227. <Column id="subdiagnm" type="STRING" size="256" sumtext="부진단명"/>
  228. </ColumnInfo>
  229. </Dataset>
  230. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  231. <ColumnInfo>
  232. <Column id="fromdd" type="STRING" size="256"/>
  233. <Column id="todd" type="STRING" size="256"/>
  234. <Column id="prid" type="STRING" size="256"/>
  235. <Column id="cnstorddeptcd" type="STRING" size="256"/>
  236. <Column id="orddrid" type="STRING" size="256"/>
  237. <Column id="pid" type="STRING" size="256"/>
  238. <Column id="hngnm" type="STRING" size="256"/>
  239. <Column id="allcheck" type="STRING" size="256"/>
  240. </ColumnInfo>
  241. <Rows>
  242. <Row/>
  243. </Rows>
  244. </Dataset>
  245. <Dataset id="ds_patnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  246. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  247. <ColumnInfo>
  248. <Column id="srchcond" type="STRING" size="256"/>
  249. <Column id="pid" type="STRING" size="256"/>
  250. <Column id="hngnm" type="STRING" size="256"/>
  251. </ColumnInfo>
  252. </Dataset>
  253. </Objects>
  254. <Bind>
  255. <BindItem id="item0" compid="roundrect1.input4" propid="value" datasetid="ds_cond" columnid="fromdd"/>
  256. <BindItem id="item1" compid="roundrect1.input2" propid="value" datasetid="ds_cond" columnid="todd"/>
  257. <BindItem id="item2" compid="roundrect1.cmb_prid" propid="value" datasetid="ds_cond" columnid="prid"/>
  258. <BindItem id="item3" compid="roundrect1.cmb_orddept" propid="value" datasetid="ds_cond" columnid="cnstorddeptcd"/>
  259. <BindItem id="item4" compid="roundrect1.cmb_orddrid" propid="value" datasetid="ds_cond" columnid="orddrid"/>
  260. <BindItem id="item5" compid="roundrect1.ipt_pid" propid="value" datasetid="ds_cond" columnid="pid"/>
  261. <BindItem id="item6" compid="roundrect1.input1" propid="value" datasetid="ds_cond" columnid="hngnm"/>
  262. </Bind>
  263. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  264. * System Name :
  265. * Job Name :
  266. * Creator :
  267. * Make Date : 2014-08-29
  268. * Description :
  269. *---------------------------------------------------------------------------------------
  270. * Modify Date Modifier Modify Description
  271. *---------------------------------------------------------------------------------------
  272. * 2014-08-29 Live Converter TF->XP
  273. *
  274. *---------------------------------------------------------------------------------------
  275. ****************************************************************************************/
  276. include "com_commonxp::comm_main.xjs";
  277. include "emr_prcpmngtxp::MMO001.xjs";
  278. function SMMMO18000_oninit(obj:Form, e:InitEventInfo)
  279. {
  280. frmf_initForm(obj);
  281. grdf_initGrid(grd_cnstlist);
  282. }
  283. function SMMMO18000_onload(obj:Form, e:LoadEventInfo)
  284. {
  285. var today = utlf_getCurrentDate();
  286. var idate = new Date();
  287. var peveDate = idate.getAddDate(-1, "M");
  288. ds_cond.setColumn(0, "fromdd", peveDate.getDateFormat());
  289. ds_cond.setColumn(0, "todd", today);
  290. lf_mmbfGetDeptCodeComboList(ds_orddept, "A");
  291. frmf_addComboItem("roundrect1.cmb_orddept"); //부서콤보 Item '전체'추가
  292. ds_cond.setColumn(0, "cnstorddeptcd", sysf_getUserInfo("dutplcecd"));
  293. setUserList(sysf_getUserInfo("dutplcecd"));
  294. }
  295. function setUserList(sOrddeptcd, sOrddrid){
  296. lf_mmbfGetUserComboList(ds_userlist, sOrddeptcd, "0330", "", "");
  297. frmf_addComboItem("roundrect1.cmb_orddrid", "", ""); //의사콤보 전체항목 추가
  298. if(!utlf_isNull(sOrddrid))
  299. roundrect1.cmb_orddrid.value = sOrddrid;
  300. }
  301. function roundrect1_cmb_prid_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  302. {
  303. var number = obj.value.substr(0, 1);
  304. var period = obj.value.substr(1, 1);
  305. var idate = new Date();
  306. var fromdd = idate.getAddDate(parseInt(number) * -1, period).getDateFormat();
  307. var todd = utlf_getCurrentDate();
  308. ds_cond.setColumn(0, "fromdd", fromdd);
  309. ds_cond.setColumn(0, "todd", todd);
  310. }
  311. function roundrect1_cmb_orddept_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  312. {
  313. setUserList(obj.value, "-");
  314. }
  315. function roundrect1_ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo)
  316. {
  317. if(e.keycode == 13) {
  318. obj.value = utlf_trim(obj.value);
  319. if(obj.value == ""){
  320. return;
  321. }
  322. if(lf_reqPatInfo(ds_patnm, "pid", "ptbs", obj.value)) {
  323. ds_cond.setColumn(0, "hngnm", ds_patnm.getColumn(0, "hngnm"));
  324. roundrect1.btn_req.onclick.fireEvent(roundrect1.btn_req, new ClickEventInfo);
  325. }
  326. }
  327. }
  328. function roundrect1_input1_onkeydown(obj:Edit, e:KeyEventInfo)
  329. {
  330. if(e.keycode == 13){
  331. ds_hidden.clearData();
  332. ds_hidden.addRow();
  333. ds_hidden.setColumn(0, "srchcond", "2");
  334. ds_hidden.setColumn(0, "hngnm", obj.text);
  335. var objArg = new Object();
  336. objArg.arg_ds_send = ds_hidden;
  337. frmf_modal("SPPMC02500", "SPPMC02500", objArg, null, 1, 150, 150, null, null, null, null, null, "M");
  338. if(!utlf_isNull(this.objects["ds_patinfolist"])) {
  339. var pid = ds_patinfolist.getColumn(0, "pid");
  340. var hngnm = ds_patinfolist.getColumn(0, "hngnm");
  341. ds_cond.setColumn(0, "pid", pid);
  342. ds_cond.setColumn(0, "hngnm", hngnm);
  343. }
  344. }
  345. }
  346. function roundrect1_btn_prcpclsnm_onclick(obj:Button, e:ClickEventInfo)
  347. {
  348. frmf_modal("SPPMC02500", "SPPMC02500", null, null, null, null, null, null, null, null, null, null, "M");
  349. if(!utlf_isNull(this.objects["ds_patinfolist"])) {
  350. var sPid = ds_patinfolist.getColumn(0, "pid");
  351. var sHngnm = ds_patinfolist.getColumn(0, "hngnm");
  352. ds_cond.setColumn(0, "pid", sPid);
  353. ds_cond.setColumn(0, "hngnm", sHngnm);
  354. }
  355. }
  356. function roundrect1_btn_req_onclick(obj:Button, e:ClickEventInfo)
  357. {
  358. var oParam = {};
  359. oParam.id = "TRMMO18001";
  360. oParam.service = "prcpmngtapp.ConcPatMngt";
  361. oParam.method = "reqGetCnstPatList";
  362. oParam.inds = "req=" + "ds_cond";
  363. oParam.outds = "ds_grd_cnstlist=cnstpatlist";
  364. oParam.async = true;
  365. tranf_submit(oParam);
  366. }
  367. function btn_print_onclick(obj:Button, e:ClickEventInfo)
  368. {
  369. var sDataset = dsf_createDs("ds_templist");
  370. var oDataset = this.objects[sDataset];
  371. oDataset.copyData(ds_grd_cnstlist);
  372. oDataset.clearData();
  373. oDataset.enableevent = false;
  374. for(var i = 0; i < ds_grd_cnstlist.rowcount; i++) {
  375. if(ds_grd_cnstlist.getColumn(i, "checkyn") == true)
  376. oDataset.copyRow(oDataset.addRow(), ds_grd_cnstlist, i);
  377. }
  378. oDataset.enableevent = true;
  379. if(oDataset.rowcount > 0) {
  380. var objDOM = rptf_createDOM(); // DOM 객체 설정
  381. rptf_setNodeListToDOM(objDOM, "root/temp/templist/cnstpatlist", oDataset); // 데이터셋 1
  382. var objParam = new Object();
  383. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  384. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  385. rptf_exeReportPreview30(["RPMMO18001"],[objParam], option);
  386. } else {
  387. sysf_messageBox("출력할 대상이 없습니다.", "I");
  388. }
  389. }
  390. function button1_onclick(obj:Button, e:ClickEventInfo)
  391. {
  392. close();
  393. }
  394. ]]></Script>
  395. </Form>
  396. </FDL>