336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

파일은 유니코드(서명있는 UTF-8) 코드 페이지 65001 로 저장할 것.


<%

Dim FileName : FileName = Server.urlEncode("초과근무내역_"&date()& ".xls")


Response.Buffer = True

Response.CharSet = "utf-8"

'Session.CodePage = "65001"

Response.CacheControl  = "public"

Response.ContentType  = "application/vnd.ms-excel"

Response.AddHeader "Content-disposition","attachment;filename="&FileName

%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

</head>

<body>

 

<table>

    <tr>

        <td>ASP</td>

    </tr>

    <tr>

        <td>엑셀로</td>

    </tr>

    <tr>

        <td>저장하기</td>

    </tr>

</table>

 

<br/>

 

<table border="1">

    <tr>

        <td>ASP</td>

    </tr>

    <tr>

        <td>엑셀로</td>

    </tr>

    <tr>

        <td>저장하기(border 적용)</td>

    </tr>

</table>

 

<br/>

 

<table border="1">

    <tr>

        <td>ASP</td>

        <td>엑셀로</td>

        <td>저장하기</td>

    </tr>

    <tr>

        <td colspan="3">(colspan 적용)</td>

    </tr>

     

</table>

 

<br/>

 

<table border="1">

    <tr>

        <td style="background-color:red;">ASP</td>

        <td style="color:blue">엑셀로</td>

        <td>저장하기</td>

    </tr>

    <tr>

        <td colspan="3" style="text-align:center;">(style 적용)</td>

    </tr>

     

</table>

 

</body>

</html>


Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

jQuery(document).ready(function() { 

    var tableHeight = jQuery("table").height(); 

    alert(tableHeight); 

}); 







$("table tr:eq(0)").height(); // 첫번째 높이 가져오기 
$("table tr:eq(0)").height("높이") //첫번째 높이 설정





Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

<script type="text/javascript">

    /* 금액 한글배열 */

    var nString = new Array();

    nString[0] = "";

    nString[1] = "일";

    nString[2] = "이";

    nString[3] = "삼";

    nString[4] = "사";

    nString[5] = "오";

    nString[6] = "육";

    nString[7] = "칠";

    nString[8] = "팔";

    nString[9] = "구";

    /* 금액단위 한글배열 */

    var nbString = new Array();

    nbString[0] = "";

    nbString[1] = "";

    nbString[2] = "십";

    nbString[3] = "백";

    nbString[4] = "천";

    nbString[5] = "만";

    nbString[6] = "십";

    nbString[7] = "백";

    nbString[8] = "천";

    nbString[9] = "억";

    nbString[10] = "십";

    nbString[11] = "백";

    nbString[12] = "천";

    nbString[13] = "조";

    nbString[14] = "십";

    nbString[15] = "백";

    nbString[16] = "천";


    function NumberString(obj) {

        var nStr = document.getElementById("nStr");

        var str = obj.value;

        var strCode = "";

        var codeStr = "";

        var nHan = "";

        var cnt = 0;

        /* 천조이상이면 */

        if (str.length > 16) {

            //alert("한글 표현은 천조 이하에 금액까지 가능합니다.");   

            //경고창 후 마지막 입력값 제거 필요 귀찮아서 안함!! ㅡㅡ;   

            return false;

        }

        /* 뒷자리부터 루프 */

        for (var i = str.length; i > 0; i--) {

            /* 유니코드 구하기 */

            strCode = str.charCodeAt(i - 1);

            /* 숫자가 맞다면 */

            if (strCode >= 48 && strCode <= 57) {

                cnt++; // 단위계산을 위해 카운팅   

                codeStr = Number(String.fromCharCode(strCode)); // Number형으로   

                if (codeStr != 1) {

                    if (codeStr == 0) {

                        if (cnt / 5 == 1) { // 만단위표현   

                            nHan = nbString[5] + nHan;

                        } else if (cnt / 9 == 1) { // 억단위표현   

                            nHan = nbString[9] + nHan;

                        } else if (cnt / 13 == 1) { // 조단위 표현   

                            nHan = nbString[13] + nHan;

                        }

                    } else {

                        /* 0이 아니면 입력값에 한글과 단위 */

                        nHan = nString[codeStr] + nbString[cnt] + nHan;

                    }

                } else if (codeStr == 1 && i == str.length) {

                    /* 1이고 마지막입력값이면 한글 일 표현 */

                    nHan = nString[codeStr] + nHan;

                } else {

                    if (codeStr == 1 && i == 1 && (cnt == 9 || cnt == 13)) {

                        /**  

                        *    입력값이 1이고 첫입력값이며 단위가 억이거나 조이면   

                        *    예) 일억 또는 일조   

                        *    억이하 단위에선 일을 표현안되기 때문에 일백만원을 백만원 일십만원을 십만원으로 표현되고  

                        *    억, 조 단위는 일억원 일조원 으로 표현하기 위해  

                        */

                        nHan = nString[codeStr] + nbString[cnt] + nHan;

                    } else {

                        nHan = nbString[cnt] + nHan;

                    }

                }

                /* 단위표현에서 억만, 조억에 두번째 단위 제거 (이거 때문에 삽질했네..) */

                nHan = nHan.replace('억만', '억').replace('조억', '조');

            } else {

                //alert("숫자로 입력하세요.");   

                //경고창 후 마지막 입력값 제거 필요 귀찮아서 안함!! ㅡㅡ;   

                return false;

            }

        }

        nStr.innerHTML = nHan + "원";

    }   

</script> 


Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

<%

OsInformation = Request.ServerVariables("HTTP_USER_AGENT")

response.write OsInformation

%>

위의 소스와 같이 접속한 단말기나 브라우저의 정보를 OsInformation 변수에 저장 후 OsInformation 변수를 출력해보면 아래와 같은 결과가 출력됩니다.

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; InfoPath.2; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)


여기에서 출력된 결과물로 구분이 가능합니다.

위의 결과물은 Internet Explorer 7버전에서 접속한 정보입니다.

예를들어 IE6버전 7버전 8버전.. 버전에 따른 구분을 하려면 ASP의 Instr 함수를 사용하여 아래와 같이 사용 가능합니다.

<%

if (instr(OsInformation1, "MSIE 6.0" ) > 0 Then

response.write "익스플로러 6 버전입니다."

Elseif (instr(OsInformation1, "MSIE 7.0" ) > 0 Then

response.write "익스플로러 7 버전입니다."

Elseif (instr(OsInformation1, "MSIE 8.0" ) > 0 Then

response.write "익스플로러 8 버전입니다."

Elseif (instr(OsInformation1, "MSIE 9.0" ) > 0 Then

response.write "익스플로러 9 버전입니다."

End If

%>


경우에 따라서 iPhone과 Android의 구분, 브라우저의 종류에 따른 구분 역시 Instr 함수를 사용하여 구분이 가능합니다.

자바스크립트의  navigator.userAgent.toLowerCase() 와 같은 기능입니다.



참고로 아래 소스는 접근 정보를 추출할 수 있는 다른 방법들입니다.

<%

host = Request.ServerVariables("HTTP_HOST")             //호스트 정보 추출

referer = Request.ServerVariables("HTTP_REFERER")    //이전 페이지 정보(url 입력으로 접근은 값 없음)

ip_reg = Request.ServerVariables("REMOTE_ADDR")    // IP 주소 추출

%>

Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

상황 : 속도에는 아무런 문제가 없고(1초만에 오류메시지 출력), 갯수에 문제가 있을경우
예) 쿼리에서 top 400 일때에는 잘나오고 480개정도 뿌릴때 에러가 나는 경우임.


오류 메시지

 응답 개체 오류 'ASP 0251 : 80004005'

Response 버퍼 제한 초과됨

/sales/contract_medi_list2.asp, 줄 0

ASP 페이지를 실행하여 Response 버퍼의 구성된 제한이 초과되었습니다.


C:\Windows\System32\inetsrv\MBSchema.xml 
파일의 aspbufferinglimit 값을 수정하거나,

C:\Windows\System32\inetsrv>appcmd set config /section:asp /limits.bufferinglimit:20480000

명령어를 해도 먹지 않았음;;

IIS7 에서 직접 수정함.
해결방법 (둘 중에 하나 선택)
1. 응용프로그램 - asp - 제한속성 - 확장(+) - 응답 버퍼링 제한 을 늘려준다.
또는
2. 응용프로그램 - asp - 동작 - 확장(+)  - 버퍼링 사용 값 false 로 변경

Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

document).on("이벤트", "이벤트발생객체", function(){

// 동작 삽입
});

 

$(document).on("change", "#BIZ_IDX", function() {

    alert("동적 이벤트");

});



Posted by 당양부부34

2014. 6. 12. 16:34 IT/ASP

세자리 콤마 찍기.

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

세자리마다 콤마 찍기.


ASP Script 에서 표현할 경우

   response.write(formatnumber( value, 0, -1 ))


PHP Script 에서 표현할 경우

   echo number_format($value);


Perl Script 에서 표현할 경우

   print cm($value);


    sub cm {        

         my $num = shift;

         my ($n) = $num =~ /(\d+)/;

         1 while $n =~ s/(\d+)(\d{3})/$1,$2/;

         $num =~ s/(\d+)/$n/;

         $num; 

    } 


JSP 

  new DecimalFormat("###,###,###,###,###").format(value);

  

  보통은 Bean으로 만들어서 표현을 합니다.         


MS-SQL Query에 의해 표현할 경우

  SELECT REPLACE(CONVERT(VARCHAR,CONVERT(MONEY,1234567890),1),'.00','')

'IT > ASP' 카테고리의 다른 글

ASP 엑셀 파일(xls)로 저장.  (0) 2014.08.04
ASP 접속한 단말기 및 브라우저 정보 추출 (HTTP_USER_AGENT)  (0) 2014.07.24
ASP 문자 열 함수.  (0) 2014.05.21
ASP 날짜 관련 함수.  (0) 2014.05.14
DEXT FileUpload API  (0) 2014.03.20
Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

Code Formatter. 코드 정렬 도구.


SQL Server Management Studio 쿼리를 작성하다 보면, 토드나 SQL Gate 등 코드정렬(포맷) 기능이 너무 아쉽다. 

이를 Cover 하는 기능이 아래와 같이 제공된다.


파일명 : SqlFormatterSSMSAddIn.Setup.1.4.4.msi.zip


관련 링크 : http://architectshack.com/PoorMansTSqlFormatter.ashx

관련 링크 : http://www.sqler.com/504675

'IT > MSSQL' 카테고리의 다른 글

FullText Search  (0) 2014.10.13
MSSQL 인덱스(Index) 생성  (0) 2014.08.20
MSSQL 사용자 테이블 및 SP권한 부여 쿼리  (0) 2014.05.08
MSSQL DateTime Convert.  (0) 2014.02.24
MSSQL STUFF, FOR XML PATH  (0) 2014.02.13
Posted by 당양부부34
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

/*

** 폼

**

** <input type="text" numberonly="true" />  // 숫자만 입력 가능한 텍스트박스

** <input type="text" datetimeonly="true" /> // 숫자, 콜론(:), 하이픈(-)만 입력 가능한 텍스트박스

*/

$(function()

{

 $(document).on("keyup", "input:text[numberOnly]", function() {$(this).val( $(this).val().replace(/[^0-9]/gi,"") );});

 $(document).on("keyup", "input:text[datetimeOnly]", function() {$(this).val( $(this).val().replace(/[^0-9:\-]/gi,"") );});

});


Posted by 당양부부34

2014. 5. 21. 15:18 IT/ASP

ASP 문자 열 함수.

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

UCASE, LCASE         => 문자열의 내용을 대문자, 소문자로 변환시켜준다. 

LEN                         => 문자열의 길이를 반환한다. 

LEFT, RIGHT, MID     => 문자열의 좌, 우, 중간에서 지정한 만큼의 문자열을 뽑아낸다. 

INSTR, INSTRREV      => 해당되는 문자열의 좌측, 우측 위치를 반환한다. 

LTRIM, RTRIM, TRIM => 문자열의 좌측, 우측, 전체의 공백을 제거한다. 

REPLACE                 => 문자열의 내용중 일부를 다른 문자열로 변경한다. 

SPLIT                       => 문자열에서 특정 문자열을 기준으로 나누어 배열로 저장한다.

 

 

1. UCASE, LCASE

- UCASE : 문자열의 내용을 모두 대문자로 변환시켜준다.

- LCASE : 문자열의 내용을 모두 소문자로 변환시켜준다.

- 표현법 : UCASE(변환대상문자열), LCASE(변환대상문자열)

<%

strTest = "I Love Kimo"

strUpper = UCASE(strTest)

strLower = LCASE(strTest)

 

Response.Write "원본글 : " & strTest & "<br>"

Response.Write "UCASE : " & strUpper & "<br>"

Response.Write "LCASE : " & strLower & "<br>"

%>

위 소스를 실행해 보면 다음과 같이 출력이 된다.

원본글 : I Love Kimo

UCASE : I LOVE KIMO

LCASE : i love kimo

 

2.  LEN

- 문자열의 길이를 반환합니다.

- 표현법 : Len(검색대상문자열)

<%

strTest1 = "I Love Kimo"

strTest2 = "안녕하세요"

 

intLength1 = LEN (strTest1)

intLength2 = LEN (strTest2)

 

Response.Write intLength1 & "<br>"

Response.Write intLength2

%>

결과를 보면 11과 5가 나옵니다. 영문과 한글모두 글자수 그대로 반환이 됨을 알 수 있습니다.

 

 

3.  LEFT, RIGHT, MID  

- LEFT 는 문자열에서 지정한 숫자만큼 왼쪽에서 부터 추출하여 반환합니다.

- RIGHT 는 문자열에서 지정한 숫자만큼 오른쪽에서 부터 추출하여 반환합니다.

- MID 함수는 문자열의 지정한 위치에서, 지정한 길이 만큼의 문자열을 반환합니다.

- 표현법 : LEFT(문자열,추출길이), RIGHT(문자열,추출길이), MID(문자열,시작위치,추출길이)

<%

strTest = "I Love Kimo"

strLeft = Left(strTest,5)

strRight = Right(strTest,4)

strMId = Mid(strTest,3,2)

 

Response.Write strTest & "<br>"

Response.Write strLeft & "<br>"

Response.Write strRight & "<br>"

Response.Write strMid & "<br>"

%>

위 소스의 결과는 아래와 같습니다. (공백도 한 글자로 인식)

I Love Kimo

I Lov

Kimo

Lo

 

4. INSTR, INSTRREV     

- INSTR은 해당되는 문자열이 좌측에서 몇번째에 존재한다는 위치를 반환합니다.

- INSTRREV은 해당되는 문자열이 우측에서 몇번째에 존재한다는 위치를 반환합니다.

- INSTR, INSTRREV 은 동일한 문자열이 있을경우 제일먼저 검색이 되는 위치입니다.

- 표현법 : Instr(검색대상,검색문자열),InstrRev(검색대상,검색문자열)

 

<%

strTest = "우리나라에서 제일 큰 강은 한강이다. 우리나라에서 제일 큰 산은 한라산이다"

strInstr = Instr(strTest,"나라")

strInstrRev = InstrRev(strTest,"나라")

 

Response.Write strInstr & "<br>" & strInstrRev

%>

결과를 보면 3 , 24 가 나옵니다. 검색할 문자열에서 "나라" 라는 문자열이 왼쪽에서 처음 검색되는 위치는 3이고 오른쪽에서 부터 검색하면 24가 됩니다.

 

 

5.  LTRIM, RTRIM, TRIM

- LTRIM : 문자열에서 왼쪽에 있는 공백을 제거한 결과를 반환.

- RTRIM : 문자열에서 오른쪽에 있는 공백을 제거한 결과를 반환.

- TRIM   : 문자열에서 양쪽에 있는 공백을 제거한 결과를 반환.

- 표현법 : LTRIM(문자열), RTRIM(문자열), TRIM(문자열)

<%

strTest = "   I Love You   "

strLTrim = LTrim(strTest)

strRTrim = RTrim(strTest)

strTrim = Trim(strTest)

 

Response.Write strTest & "<br>"

Response.Write strLtrim & "<br>"

Response.Write strRtrim & "<br>"

Response.Write strTrim & "<br>"

%>

위소스의 결과를 보면 브라우저에는 아래와 같이 결과가 동일해 보일겁니다.

I Love You 

I Love You 

I Love You

I Love You

그러나 소스보기를 해서 보면 어떤 차이가 있는지 금방 알 수 있습니다.

    I Love You     <br>I Love You     <br>    I Love You<br>I Love You<br>

원글은 양쪽으로 모두 3칸의 공백이 있고 LTRIM을 한 부분은 왼쪽공백이 제거 되어 있고

RTRIM을 한쪽은 오른쪽 공백이 TRIM을 한곳은 양쪽모두 공백이 제거 되었음을 알 수 있습니다.

 

6.  REPLACE 

- 문자열 중에서 특정 내용을 다른 내용으로 바꾸려 할 때 REPLACE 함수를 사용합니다.

이 함수의 사용법은 다음과 같습니다.

- 표현법 : REPLACE(원본문자열,"변경대상문자열","변경할새로운문자열")

<%

strBefore = "I like you.. Do you like me?"

strAfter = REPLACE (strBefore, "like", "love")

Response.Write strBefore & "<br>"

Response.Write strAfter & "<br>"

%>

위 소스의 결과를 보면 위 문장에 있는 "like" 라는 단어가 "love"로 변경 된것을 알 수 있습니다.

이러한 REPLACE구문은 특히 게시판에서 글을 등록시킬때 많이 사용됩니다. (태그를사용하지 못하게 할 경우와 태그를 사용하게 하는 경우)

 

7. SPLIT

- 이 함수는 어떤 문자열에서 특정한 문자열 또는 기호를 기준으로 문자열을 분해한 다음,

분해된 문자열들을 배열에 저장하는 함수입니다.

- 표현법 : REPLACE(원본문자열,"분해기준")

<%

strTemp = "aaa, bbb, ccc, ddd, eee"

arrTemp = Split(strTemp,",")

 

Response.Write arrTemp(0) & "<br>"

Response.Write arrTemp(1) & "<br>"

Response.Write arrTemp(2) & "<br>"

Response.Write arrTemp(3) & "<br>"

Response.Write arrTemp(4) & "<br>"

%>

위 소스에서 strTemp에 저장된 데이터는 "," 를 기준으로 5개의 데이터가 있습니다.

Split 함수를 이용하여 "," 를 기준으로 기존 문자열을 분리하여 배열을 생성했습니다. Split 함수를

이용하면 자동으로 배열이 생깁니다.

'IT > ASP' 카테고리의 다른 글

ASP 접속한 단말기 및 브라우저 정보 추출 (HTTP_USER_AGENT)  (0) 2014.07.24
세자리 콤마 찍기.  (0) 2014.06.12
ASP 날짜 관련 함수.  (0) 2014.05.14
DEXT FileUpload API  (0) 2014.03.20
asp DB 연결 string 관리.  (0) 2014.03.12
Posted by 당양부부34

블로그 이미지
주요 토렌트를 블로깅하고 있습니다. 토렌트 순위 등은 다른 사이트를 찾아보세요. 주요 웹툰 순위도 게재했어요 경제를 좋아하는 일산의 행복한 프로그래머입니다.
당양부부34
Yesterday
Today
Total

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함