오즈리포트 작업 중 MSSQL, JAVASCRIPT 소수점 반올림 결과가 다름을 확인


DB에서 불러온 점수를 백분율로 계산하면


배점 

 점수

 백분율

 40

34.67

86.675




백분율이 86.675 인데 javscript의 toFixed(2)와 mssql의 round(결과, 2)로 반올림한 결과 86.67이 나옴


상식적으로 86.675에서 두자리 반올림이면 86.68이 나와야 되는거 아닌가?



mssql :  float와 decimal(10, 2)이 결과가 또 다름..decimal로 한경우에 86.68이 나옴

javascript : toFixed를 Math.round로 하면 86.68이 나옴

'개발 > ETC' 카테고리의 다른 글

엑셀 저장시 줄바꿈  (0) 2018.01.18

SELECT DISTINCT t1.name AS keyName, OBJECT_NAME(t1.parent_object_id) AS tableName

, COL_NAME(t2.parent_object_id, t2.parent_column_id) AS columnName

FROM sys.foreign_keys t1 

JOIN sys.foreign_key_columns t2 ON t2.constraint_object_id = t1.OBJECT_ID

JOIN sys.tables t3 ON t3.OBJECT_ID = t2.referenced_object_id 

WHERE OBJECT_NAME (t1.referenced_object_id) = '테이블명'

데이터)

Idx      name

 1       가나다

 1       라마바

 1       사아자



쿼리)

DECLARE @arrName VARCHAR(1000)

SELECT @arrName = COALESCE(@arrName, '') + name + ','

FROM tbTest

WHERE Idx = 1


PRINT @arrName



결과)

가나다,라마바,사아자


DropDownList HTML 특수코드 적용

tip. HTML 특수코드 = HTML Character Entity(HTML 문자 단위(엔티티))


test.aspx


<asp:DropDownList ID="ddlList" runat="server" />



test.aspx.cs


ListItem item;


item = new ListItem();

item.Text = "대분류";

item.Value = objList.Rows[X]["DepartmentCD"].ToString();

ddlList.Items.Add(item);


item = new ListItem();

item.Text = HttpUtility.HtmlDecode("&nbsp;&nbsp;┖ ") + "중분류";

item.Value = objList.Rows[X]["DepartmentCD"].ToString();

ddlList.Items.Add(item);



적용 화면



String str = "12.3|45.6|78.9";

String[] arr = str.split("\\|");


for(int i=0; i<arr.length; i++) {

Log.i("split test", arr[i]);

}


\\붙이지 않은 경우

1

2

.

3

4

5

.

6

7

8

.

9


\\붙인 경우

12.3

45.6

78.9


\\를 붙이지 않으면 한글자씩 인식 되기 때문에 특수문자를 구분자로 할 경우 \\를 붙여야 됨. 



개발 중 발생한 오류 및 해결 방법 정리



2017-06-30

- 상황 : 안드로이드 스튜디오 버전업 후 기존 프로젝드 Run 했을때 아래와 같은 오류 발생

- 오류 : This version of Android Studio is incompatible with the Gradle Plugin used. Try disabling Instant Run (or updating either the IDE or the Gradle plugin to the latest version)

- 해결 : Build > Clean Project





'개발 > ANDROID' 카테고리의 다른 글

안드로이드 SDK 21 이상 http 링크 호출  (0) 2019.04.26
split 로 문자열 자를때 유의사항  (0) 2017.07.03

DECLARE @str varchar(20), @split varchar(1)


SET @str = '동해물과/백두산이'

SET @split = '/'


-- 구분자 앞 문자열 보여주기

print LEFT(@str, CHARINDEX(@split, @str) - 1)

-- 결과 : 동해물과


-- 구분자 뒤 문자열 보여주기

print RIGHT(@str, CHARINDEX(@split, REVERSE(@str)) - 1)

-- 결과 : 백두산이

.net 


<CKEditor:CKEditorControl ID="cke" runat="server" ResizeMinHeight="500" AutoGrowMinHeight="500" Height="500"></CKEditor:CKEditorControl>



javascript


CKEDITOR.instances.<%= cke.ClientID %>.getData(); // 불러오기

CKEDITOR.instances.<%= cke.ClientID %>.setData('입력값'); // 입력

'Microsoft.ACE.OLEDB.12.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다.


해결방법

  - AccessDatabaseEngine 설치 : AccessDatabaseEngine.exe, AccessDatabaseEngine_X64.exe

'개발 > C# .NET' 카테고리의 다른 글

ASP.NET Core 앱 게시 및 배포  (0) 2022.05.23
DropDownList HTML 특수코드 적용  (0) 2017.07.18
CKEditor 내용 불러오기 및 입력  (0) 2017.06.21

JAVASCRIPT


test.aspx


········

var arrParams = [];

     arrParams[0] = '0';

     arrParams[1] = 'test';

var jsonData = JSON.stringify({ pArrParams: arrParams }); // ascx와 변수명이 동일이해 한다


$.ajax({

type: 'POST',

url: 'test.ascx/GetTestParam',

data: jsonData,

//async: false, // 동기(true)/비동기(false)

//contentType: 'application/json; charset=euc-kr',

dataType: 'json', // dataType is json format

success: function (res) {

var result = res.d;

//console.log(result);

},

error: function (res) {

alert('오류가 발생했습니다.\n\nstatus : ' + res.status + '\nstatusText : ' + res.statusText);

//console.log(res.responseText);

}

});

········



.NET


test.ascx


········

/// <summary>

/// Setting의 요약 설명입니다.

/// </summary>

[WebService(Namespace = "http://tempuri.org/")]

[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

[ScriptService]

········

[WebMethod]

public int GetTestParam(List<string> pArrParams)

{

object[] arrParam = new object[2];


arrParam[0] = pArrParams[1];

arrParam[1] = pArrParams[2];


// 파라미터를 받아서 처리

········

}

········

+ Recent posts