마이플랫폼 참고자료

Useful Tips/SㆍW 2009.09.09 18:23

☞ c3mix 상품제외처리

 if ( v_AssignFg == '1' ) 
  gds_StdProd.filter("PROD_KIND_CD=='11'||PROD_KIND_CD=='12'||PROD_KIND_CD=='13'||PROD_KIND_CD=='14' ") ;
 else if ( v_AssignFg == '2' )
  gds_StdProd.filter("PROD_KIND_CD=='11'&&PROD_CD<>'000003'") ; // c3(mix) 제외
 else if ( v_AssignFg == '3' )
  gds_StdProd.filter("PROD_KIND_CD=='11'&&PROD_CD<>'000003'") ; // c3(mix) 제외
 else if ( v_AssignFg == '4' )
  gds_StdProd.filter("PROD_KIND_CD=='12'") ;

 

☞ 그리드에서 소수점처리

 데이터셋은 DECIMAL 로 불러오고 ,

그리드설정항목 :  Display=number , Edit(e): lowernum , Mask(E): expr:###,###,###,###.### 으로 설정해서 0 도 표시된다.

 

 

주문처리 구현중에 수량만 처리안되어서 ds 에서 type을 integer 로 수정해서 처리완료되엇음

 

// 유종가져오기 (주유소 , 충전소 )
  v_Row = ds_Assign.SearchRow("ASSIGN_CD='"+strCode+"'") ; // 소속구분 확인
  v_AssignFg = ds_Assign.GetColumn(v_Row,"ASSIGN_FG"); // 1:본사 2:충전소 3:용기검사소, 4:주유소
  if ( v_AssignFg == "2" )
   gds_stdProd.filter("PROD_KIND_CD='11'") ; // 충전소
  else if ( v_AssignFg == "4" )
   gds_stdProd.filter("PROD_KIND_CD='12'") ; // 주유소

  ds_StdProd.CopyF(gds_StdProd) ;
  ds_Prod.CopyF(gds_StdProd) ;  

 

decode(length(Tostring("COND_RATE")),0,'###,###,###.###','###,###,##0.###')

 

☞ 말풍선 도움말

  function grd_Ship_OnMouseOver(obj,nPosX,nPosY,nRow,nCell,nPivotIndex)
{
 if ( nCell == 3 )
 {
  obj.ToolTipText = ds_Ship.GetColumn(nRow,"MNG_DEAL_NM") ;
 } else {
  obj.ToolTipText = "";
 }
}

 

☞ 그리드 속성처리 가변으로 적용하기

iif(CNT=="1", "완전","부분")

iif(DELI_NM == '확인', 'red','default')

 

☞ 그리드 중복처리
suppress 1로 셋팅한다.

 

☞ 그리드 포커스 이동처리   MoveToNextCell()
function grd_DealSale_OnEnterDown(obj,nRow,nCell,strVal,nPivotIndex)
{
 //trace ("nCell = "+ nCell ) ;
 // 추가에누리 등록시에 스킵처리한다.
 if (nCell == 14 ) grd_DealSale.MoveToNextCell();
 grd_DealSale.MoveToNextCell();
}

 

 

☞ 그리드 배경색을 지정

    // 그리드 배경색을 지정한다.
   grd_LeadList.SetCellProp("body",colIdx,"BkColor",v_BgColor);
   grd_LeadList.SetCellProp("head",colIdx,"BkColor",v_BgColor);
   grd_LeadList.SetCellProp("head",colIdx,"text",day+"\n("+v_YoilNm+")" );

☞ 날짜 증가

addDate("strDate" ,   1 ) ;

addMonth("strMonth", 1 ) ;

 

☞ EXPRESION 사용

iif(gfn_IsNull(ds_Mboard.getcolumn(currow,"R_ASSIGN_CD")),ds_Msupp.getcolumn(ds_Msupp.FindRow("NM_CD",ds_Mboard.getcolumn(currow,"R_ASSIGN_FG")),"NM_SUB"),ds_Massign.getcolumn(ds_Massign.FindRow("ASSIGN_CD",ds_Mboard.getcolumn(currow,"R_ASSIGN_CD")),"ASSIGN_NM"))

iif(parseInt(ds_Gauge.getcolumn(currow,"GAUGE_NO"))%2,"green","yellow")

iif(ds_Gauge.getcolumn(currow,"END_DAY")=="99991231","")

iif(ds_Gauge.getcolumn(currow,"END_DAY")=="99991231", "null","date")

 

☞ 그리드 멀티선택 기능

function Grid_PersonList_OnHeadClick(obj,nCell,nX,nY,nPivotIndex)
{
 if (nCell == 0)
 {
  if (Grid_PersonList.GetCellProp("head",0,"Text")=="1")
  {
   Grid_PersonList.SetCellProp("head",0,"Text","0");
   
   for(var i=0; i<dsPerson.RowCount(); i++)
    dsPerson.SetColumn(i, "chk", "0");
  }
  else
  {
   Grid_PersonList.SetCellProp("head",0,"Text","1");
   
   for(var i=0; i<dsPerson.RowCount(); i++)
    dsPerson.SetColumn(i, "chk", "1");
  } 
 }
 else
 {
  gfn_GridSort(Grid_PersonList,dsPerson,nCell,9);
 }
}

☞ 특정 그리드로 이동 설정 ;

    // 선택항목으로 이동
   var v_Row = ds_Mboard.SearchRow("SEQ='"+ gv_BOARD_SEQ +"' && REPLY_SEQ='" + gv_BOARD_REPLY_SEQ +"'");
   ds_Mboard.row = v_Row ;

☞ 파일 가져오기  LoadXML();

dsPam.LoadCSV(arg_dsTC.GetColumn(arg_Row, "PARAMETER"));

gds_Temp.LoadXML(ret);

자료 생성용 Dataset을 만든다.
 Create("Dataset", "dsPam", "DataSetType=\"Dataset\" Id=\"dsPam\"");

생성된 Dataset을 삭제한다.
 Destroy("dsPam");

ds_Assign.FireEvent = false;  데이터셋의 변경에 따른 부하를 줄이기 위해서 사용

eval(this.OnLoadCompleted + "()");   this.OnInit = "gfn_OnInited";

decode(rowtype, "update", "yellow", "insert", "red", "default")

☞ grid 를 이용한 subSum 구현하기

dataSet 에서 -- 속성에서 group Key setting -- grid 에서 항목에 대한 supress 를 지정한다.

dataSet 에서 -- columns 에서 sum, sum-text 에 구현해준다.

bkColor ==>  decode(jigup_nm,'소계','yellow','white')

grid Editor 에서 sum 라인에서 Expr : Sum('jigup_amt') 로 처리해 준다.

grid - HeadHeight

grid - RowHeight

 

CopyF - 필터된 dataSet 을 넘길때 사용한다.

 gds_Assign.filter("ASSIGN_FG == '1' ") ;
 v_Row = ds_Assign.CopyF(gds_Assign);

☞ 트리메뉴 세로간격

RowHeight

 

데이터셋에서 타이틀 볼드해제하기

boldhead : false

 

☞ max 값 구하기 , lpad 사용하기

maxVal = Lpad(parseInt(ds_mainMenu.Max("loc_no"))+1 , '0', 2) ;


☞ 데이터셋 : dataSet

fillarea : 데이터셋영역중 미사용영역도 동일하게 적용하기

cellMoving : 제목부분을 마우스 드래그로 이동가능하게 적용

 

 공통함수

1- 로그저장 로직

2- LOADING 메세지

3- 이미지 표준네이밍 작업

4- 제목부 타이틀 이미지 작업

5- 권한설정 확인부 공통로직

 

 

 

--- ftp 처리


#------------------------------------------------------------------------------#
# to get van ftp file server
#------------------------------------------------------------------------------#
ftp -n ${host_ip} << -!
    user ${user_id} ${user_pwd}
    prompt
    cd  ${r_move_dir}
    lcd ${l_move_dir}
    get ${remot_file_name} ${local_file_name}
    bye
<< -!
#------------------------------------------------------------------------------#

 

 출처 : 스터디넷

 

Trackbacks 0 : Comments 0

Write a comment