'language'에 해당되는 글 28건

  1. 2013.09.11 [jquery] datepicker 특정날짜만 disable 시키기
  2. 2013.09.10 sequence reset sequence
  3. 2013.08.16 DB2 procedure
  4. 2013.08.06 정규 표현식(Regular Expression)
  5. 2013.07.26 ORA-01502 오류
  6. 2013.07.23 cooke 가져오기
  7. 2013.07.12 getYear 오류
  8. 2013.07.09 test

[jquery] datepicker 특정날짜만 disable 시키기

language/jquery 2013. 9. 11. 17:34

원본 링크 http://nampoong.tistory.com/75


날짜 입력폼과 관계된 데이터 컨트롤시 jquery-ui 에서 제공하는 datepicker를 많이 이용하는데요.

오늘은 시작일과 종료일의 범위를 두고 그사이의 특정날짜들을 일부 제거해야하는 형태의 프로그램작업이 있어 작업한걸 공개해봅니다.

일단 먼저 아래와 같이 기본적으로 필요한 jquery와 jquery-ui를 불러옵니다. jquery.com CDN 을 이용했습니다.


1<link type="text/css" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" rel="stylesheet">
2<script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.js"></script>
3<script type="text/javascript" src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>


날짜컨트롤들을 지역화하여 한글형태로 다루기 위해 먼저 datepicker 의 기본옵션값을 세팅해둔후 주말(토,일요일), 일요일, 이전날짜, 특정날짜들을 return 하는 함수들도 선언해 둡니다.

disabledDays 라는 배열변수에는 임의로 "2013-7-9", "2013-7-24", "2013-7-26" 와 같이 3개의 날짜를 듬성듬성 심어놓았습니다.

각 입력폼에 datepicker 를 호출하면서 beforeShowDay 라는 옵션값에 가져오는 값에 따라 특정날짜들이 disable 됩니다.


01jQuery(function($){
02    $.datepicker.regional['ko'] = {closeText: '닫기',prevText: '이전달',nextText: '다음달',currentText: '오늘',monthNames: ['1월(JAN)','2월(FEB)','3월(MAR)','4월(APR)','5월(MAY)','6월(JUN)','7월(JUL)','8월(AUG)','9월(SEP)','10월(OCT)','11월(NOV)','12월(DEC)'],monthNamesShort: ['1월','2월','3월','4월','5월','6월','7월','8월','9월','10월','11월','12월'],dayNames: ['일','월','화','수','목','금','토'],dayNamesShort: ['일','월','화','수','목','금','토'],dayNamesMin: ['일','월','화','수','목','금','토'],weekHeader: 'Wk',dateFormat: 'yy-mm-dd',firstDay: 0,isRTL: false,showMonthAfterYear: true,yearSuffix: ''};
03    $.datepicker.setDefaults($.datepicker.regional['ko']);
04    $('#date1').datepicker({showOn: 'both',buttonText: "달력",changeMonth:true,changeYear: true,showButtonPanel:true,yearRange: 'c-99:c+99',constrainInput:true,maxDate: '+1y',beforeShowDay: disableAllTheseDays   });
05    $('#date2').datepicker({showOn: 'both',buttonText: "달력",changeMonth:true,changeYear: true,showButtonPanel:true,yearRange: 'c-99:c+99',constrainInput:true,maxDate: '+1y',beforeShowDay: noBefore  });
06    $('#date3').datepicker({showOn: 'both',buttonText: "달력",changeMonth:true,changeYear: true,showButtonPanel:true,yearRange: 'c-99:c+99',constrainInput:true,maxDate: '+1y',beforeShowDay: noWeekendsOrHolidays  });
07    $('#date4').datepicker({showOn: 'both',buttonText: "달력",changeMonth:true,changeYear: true,showButtonPanel:true,yearRange: 'c-99:c+99',constrainInput:true,maxDate: '+1y',beforeShowDay: noSundays });
08});
09 
10// 특정날짜들 배열
11var disabledDays = ["2013-7-9","2013-7-24","2013-7-26"];
12 
13// 주말(토, 일요일) 선택 막기
14function noWeekendsOrHolidays(date) {
15    var noWeekend = jQuery.datepicker.noWeekends(date);
16    return noWeekend[0] ? [true] : noWeekend;
17}
18 
19// 일요일만 선택 막기
20function noSundays(date) {
21  return [date.getDay() != 0, ''];
22}
23 
24// 이전 날짜들은 선택막기
25function noBefore(date){
26    if (date < new Date())
27        return [false];
28    return [true];
29}
30 
31// 특정일 선택막기
32function disableAllTheseDays(date) {
33    var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
34    for (i = 0; i < disabledDays.length; i++) {
35        if($.inArray(y + '-' +(m+1) + '-' + d,disabledDays) != -1) {
36            return [false];
37        }
38    }
39    return [true];
40}


위 소스상의 내용은 아래 입력폼에서 테스트 해볼수 있습니다.


특정일 비활성화 : 

이전날짜 비활성화 : 

주말(토,일) 비활성화 : 

일요일만 비활성화 : 


특정날짜와 주말을 비활성화한다던지 토요일만 비활성화 한다던지.. 국경일,명절 날짜데이터를 수집해서 비활성화 한다던지 여러가지로 응용해서 만들어 볼수도 있겠습니다~~~ ^^


참고 url :

http://api.jqueryui.com/datepicker/

http://davidwalsh.name/jquery-datepicker-disable-days

저작자 표시 비영리 동일 조건 변경 허락


:

sequence reset sequence

language/DB 2013. 9. 10. 12:59

http://stackoverflow.com/questions/51470/how-do-i-reset-a-sequence-in-oracle 


CREATE or REPLACE PROCEDURE reset_sequence (sequencename IN VARCHAR2) as

      curr_val INTEGER;

   BEGIN

     EXECUTE IMMEDIATE 'alter sequence ' ||sequencename||' MINVALUE 0';

       EXECUTE IMMEDIATE 'SELECT ' ||sequencename ||'.nextval FROM dual' INTO curr_val;

       EXECUTE IMMEDIATE 'alter sequence ' ||sequencename||' increment by -'||curr_val;

       EXECUTE IMMEDIATE 'SELECT ' ||sequencename ||'.nextval FROM dual' INTO curr_val;

      EXECUTE IMMEDIATE 'alter sequence ' ||sequencename||' increment by 1';

    END reset_sequence;

'language > DB' 카테고리의 다른 글

sql 정규식  (0) 2013.09.26
여러행을 한줄로  (0) 2013.09.26
merge 문  (0) 2013.09.25
DB2 procedure  (0) 2013.08.16
ORA-01502 오류  (0) 2013.07.26
:

DB2 procedure

language/DB 2013. 8. 16. 13:30

CREATE PROCEDURE PRC_TNINFO (P_USER VARCHAR2(20), P_DB_ID NUMBER(20), P_TM VARCHAR2(14)) IS   
   
 v_state varchar2(1000) := '';   
 v_TABLE_NM  varchar2(500) := ' ';
 v_TABLE_NM2  varchar2(500) := ' ';
 v_TABLE_ID NUMBER(20);
 v_COLUMN_ID NUMBER(20);
 
 v_COLUMN_NM  varchar2(500) := '';
 v_COLUMN_KOREAN_NM  varchar2(500) := '';
 v_DATA_TY  varchar2(500) := '';
 v_DATA_LT number(4);
 v_DCMLPOINT_LT number(4);

 v_sql  varchar2(500) := '';
        
 TYPE CurTyp IS REF CURSOR;   
 cv1  CurTyp;   
 i_t  number := 0;   
 i_c  number := 0; 
   
 BEGIN
      v_sql := ' SELECT TABLE_NM,COLUMN_NM , COLUMN_KOREAN_NM, DATA_TY, DATA_LT, DCMLPOINT_LT FROM PDQM.TNTABLECOLUMNINFO  '   
           || ' WHERE REGISTER_ID = :1 AND DATABASE_ID= :2   ' ;                
  IF cv1%ISOPEN
  THEN CLOSE cv1;
  END IF;
     
  OPEN cv1 FOR v_sql using P_USER, P_DB_ID;
    
  LOOP   
   FETCH cv1 INTO  v_TABLE_NM, v_COLUMN_NM ,v_COLUMN_KOREAN_NM, v_DATA_TY, v_DATA_LT ,v_DCMLPOINT_LT ;   
   EXIT WHEN cv1%NOTFOUND; 
     IF (v_TABLE_NM <> v_TABLE_NM2)  then  
       BEGIN
           v_TABLE_ID:= SEQ_M_TABLEID.NEXTVAL;
           i_t := i_t + 1;
           i_c := 0;
           INSERT INTO TNTABLEINFO (TABLE_ID, DATABASE_ID, TABLE_NM, SORT_ORDR) 
           VALUES (v_TABLE_ID, P_DB_ID, v_TABLE_NM , i_t); 
       END;
     END IF;             
     v_TABLE_NM2 := v_TABLE_NM;             
     BEGIN
        v_COLUMN_ID := SEQ_M_COLUMNID.NEXTVAL;
        i_c := i_c + 1;
        INSERT INTO TNCOLUMNINFO 
                (COLUMN_ID, TABLE_ID, COLUMN_NM, COLUMN_KOREAN_NM, DATA_TY, DATA_LT, DCMLPOINT_LT, SORT_ORDR) 
         VALUES (v_COLUMN_ID, v_TABLE_ID, v_COLUMN_NM, v_COLUMN_KOREAN_NM, v_DATA_TY, v_DATA_LT ,v_DCMLPOINT_LT, i_c);
     END;
  END LOOP;   
  
  IF cv1%ISOPEN
  THEN CLOSE cv1;
  END IF;

  BEGIN
    DELETE FROM TNTABLECOLUMNINFO
    WHERE REGISTER_ID = P_USER
    AND DATABASE_ID = P_DB_ID;
  END;
    
END;

'language > DB' 카테고리의 다른 글

sql 정규식  (0) 2013.09.26
여러행을 한줄로  (0) 2013.09.26
merge 문  (0) 2013.09.25
sequence reset sequence  (0) 2013.09.10
ORA-01502 오류  (0) 2013.07.26
:

정규 표현식(Regular Expression)

language/etc 2013. 8. 6. 14:36
:

ORA-01502 오류

language/DB 2013. 7. 26. 10:55

ORA-01502: 인덱스 '계정.인덱스명'또는 인덱스 분할영역은 사용할 수 없은 상태입니다


해당 인덱스를 리빌드 한다.


alter index "계정"."인덱스명" rebuild ;


링크 답변내용

http://www.dbguide.net/dbqna.db?cmd=view&boardConfigUid=30&boardUid=176239

ORA-01502 에러는 생성된 인덱스를 사용할 수 없을때 발생하는 에러입니다.

DBA_INDEXES나 DBA_IND_PARTITIONS 뷰를 질의해서 STATUS 컬럼의 값이 UNUSABLE, N/A가 아닌 인덱스가 있는지 확인해 보시기 바랍니다.

해당 에러 발생 시, 에러 메시지를 보면 문제가 되는 인덱스를 확인할 수 있습니다.

해당 인덱스를 REBUILD 해 주시면 정상적으로 서비스 가능합니



'language > DB' 카테고리의 다른 글

sql 정규식  (0) 2013.09.26
여러행을 한줄로  (0) 2013.09.26
merge 문  (0) 2013.09.25
sequence reset sequence  (0) 2013.09.10
DB2 procedure  (0) 2013.08.16
:

cooke 가져오기

language/java 2013. 7. 23. 15:54

function getCookie1(Name) {

   var search = Name+"=";

   search=search.replace(/_/gi,"%5F");//_가 인코딩이 않되어 수작업으로 변경

   if (document.cookie.length > 0) { // 쿠키가 설정되어 있다면

       offset = document.cookie.indexOf(search);

//         alert(document.cookie);  //사용 할 수 있는 쿠키 값을 불러옴

//             alert("3333 offset :"+offset+" //  search:"+search);

//         alert("3333 offset :"+offset

//                  +"\n//search:"+search

//                  +"\n//escape():"+escape(Name)

//                  +"\n//encodeURI() :"+encodeURI(Name)

//                  +"\n//unescape() :"+unescape(Name)

//                  +"\n//decodeURI() :"+decodeURI(Name)

//                  +"\n//encodeURIComponent() :"+encodeURIComponent(Name)

//                  +"\n//decodeURIComponent() :"+decodeURIComponent(Name) );  //  _ 는 인코않된다...ㅋ

       if (offset != -1) { // 쿠키가 존재하면

           offset += search.length;

           // set index of beginning of value

           end = document.cookie.indexOf(";", offset);

           // 쿠키 값의 마지막 위치 인덱스 번호 설정

           if (end == -1)

               end = document.cookie.length;

           return unescape(document.cookie.substring(offset, end));

       }

   }

   return "";

}


<script>


   $('#chk_same').click(function() {

    var ischecked = $('#chk_same').attr('checked');

    

    if(ischecked){

         firtName = getCookie1("AWB_FIRT_NAME");

         lastName = getCookie1("AWB_LAST_NAME");

         birth    = getCookie1("AWB_BIRTH_DATE");

         sex      = getCookie1("AWB_PAX_SEX");

         hangul_name =getCookie1("AWB_USER_NM");

         

         alert("firtName:"+firtName+"//lastName:"+lastName+"//birth:"+birth+"//sex:"+sex);

         $('#pax01_hangul_name').val(firtName);  //hidden 값

         $('#pax01_last_name').val(lastName);

         $('#pax01_first_name').val(firtName);

         $('#pax01_birth').val(birth);

//         $('#pax01_sex').val(sex);

        $("#pax01_sex").val(sex).attr("selected", "selected"); //select box 선택

    }

   });

</script>

:

getYear 오류

language/java 2013. 7. 12. 12:20

해당 폴더 아래 전부 치환 리눅스

getYear사용시에 년도가져오는 부분이 잘못 가져와 getFullYear로 전부 변경 대소문자 구분된다.

find ./ -name "*.html" -exec perl -pi -e "s/getYear/getFullYear/g" "{}" \;

:

test

language/java 2013. 7. 9. 15:43

test

: