문의하신 내용이 두가지 입니다.
1. GridID.ColumnProp("Qty","color") = "{decode(Status,"U","red","black")}"
이와 같이 했을때 모든 로우의 Qty 칼럼 값이 모두 바뀐다고 하셨는데,
정상적으로는 사용자가 값을 변경했을때만 칼라 값이 변경이 됩니다.
그런데 모두 로우가 바꼈다고 하신걸로 봐서는 데이타셋의 값은 임의로 변경을 시키신것 같습니다.
그럼, 데이탓의 값을 변경하신 후에 데이타셋의 ResetStatus 메소드를 사용하여 Status 를 Normal 로 셋팅하시면 해결이 될것 같습니다.
2. 소수점 2자리 까지 짤라서 올리는 방법
그리드에서 제공하는 함수는 오라클에서 쓰는 함수를 적용한 것입니다.
오라클에서도 소수자리에서 올림이나 버림을 하실때 곱하기 10이나 100 을 하시고 올림이나 버림 작업후에 다시 10이나 100 을 나누는 방법을 사용하셨을 것입니다.
따라서 Value={(Ceil(Amt*100))/100} dec=2
이와 같이 사용하시면 원하는 결과가 나올것 입니다.
수고하세요.
>게시판을 이용해 주셔서 감사합니다.
>다음양식에 맞게 입력해주세요.
>
>* 고객시스템명 :
>* GAUCE 버전 :
>* WAS 종류(WebLogic 등등) :
>* DB 종류 :
>* 문의 유형(질문/요청/참조) :
>* 내용 :
>말씀하신 데로 하니까 작성한 구문되로 동작은 정확이 합니다.
>
>하지만 제가 원하는 것은 이벤트가 일어 났던 그행의 그 컬럼의 한부분만
>다른 색으로 바꾸고 싶었던것 이었습니다.
>하지만
>GridID.ColumnProp("Qty","color") = "{decode(Status,"U","red","black")}";
>위구문은 그 행이 아니라 행과는 상관없이 모든 행의 해당 컬럼을 변경 시켜버립니다.
>그래서 제가 의도한 바되로 되지가 않습니다.
>그래서 특정 컬럼을 만들어서 그 컬럼의 값을 바꾸고 그 값을 가지고 그행의 해당 컬럼의
>색깔을 바꾸어습니다.
>
><script language="javascript" for=Grid_Obj event=OnExit(row,colid,olddata)>
>
>
>if ( Grid_Data.NameString(row,colid) != olddata )
>{
> Grid_Data.NameString(row, "입력여부") = "Y"
> // 아래 구문은 적지 않아도 자동으로 다시 변경된값으로 셋팅이 됩니다.
> //Grid_Obj.ColumnProp("Qty","color") = "{Decode(입력여부,'Y','black','N','blue')}";
>}
>
></script>
>
>그리고..
>Value={(등급율 & "%")} 를 쓰니 제대로 동작을 하네요..
>근데.. dec=2를 써서 소수점 2자리 까지 표현하고 했던 구문이 적용이 되지가 않네요...
>어떻게 해야 되나요..
>value 안 구문에 round 같은 함수가 있다면 쓸수 있나요..
>Value={(등급율*100 & "%")} 이런식으로는 가능하더라구요....
>
>답변좀 부탁드립니다.
>
>수정 round는 원하는 바 되로 바로 써지더라구요 ^^&
>근데.. round가 아니구 반올림 하지 않고 그냥 소수점 2자리 까지 짤라서 올릴려면
>어떻게 하나요?