'Nexacro-이론 및 튜닝/기본문법'에 해당되는 글 6건

  1. 2017.09.28 Nexacro-튜닝포인트
  2. 2017.02.13 Nexacro-Null
  3. 2017.01.31 Nexacro - Array.초기화
  4. 2017.01.22 Nexacro 문법 - do while
  5. 2017.01.22 Nexacro 기본문법.Array2
  6. 2017.01.22 Nexacro 기본문법 - Array

[ Nexacro-튜닝포인트 ]

 

1. Hashmap 사용하기

    - 이유 : ds_nam.findRow(); - 자료가 많을 경우 경우 속도가 느려짐

    - 방법 :

         선언    : this.oDetailColIdx = {};

         값 Set : this.oDetailColIdx[pk컬럼1값 + ',' + pk컬럼2값] = row;   - 즉 pk를 key로 잡고, row를 set한다.

 

2. array_name.reduce

 

3. alasql

   - https://github.com/agershun/alasql

   - https://raw.githubusercontent.com/wiki/agershun/alasql/Similar-Projects.md

 

3. javascript용 excel

    - https://github.com/agershun/alax

    - node.js 용 excel

      .  https://todactodac.blogspot.kr/2016/06/nodejs-excel4node-node-excel.html?view=flipcard#!/2016/06/nodejs-excel4node-node-excel.html

      . https://talesofthefluxfox.com/2016/10/07/writing-to-xlsx-spreadsheets-in-node-js/

 

4. grid.enableRedraw 보단  grid.refreshBody(false)가 속도가 빠름.

 

5. makeRowIndex

    setGdmiColumn

    getGdmiColumn

    typeof

    viewRecord

 

6. dataset prototype 구현

    - set, get이 잘 안됨. 이유가 뭘까?

6.1 prototype 정의

this.calculatorInitSet = function(){
 var _pDataset = nexacro.Dataset.prototype;
 
 if(!_pDataset.setGdmiColumn) {
  _pDataset.setGdmiColumn = function(nRow, sCol, val) {
  
   try{
    this._rawRecords[nRow][sCol] = val;
    this._rawRecords[nRow][sCol].hi = val;
   }
   catch(e){}
  };
 }
 
 if(!_pDataset.getGdmiColumn) {
  _pDataset.getGdmiColumn = function(nRow, sCol) {
  
   try{
    return this._rawRecords[nRow][sCol];  -- _rawRecords :getColumn()함수보다 빠른 nexa 내부 함수
   }
   catch(e){}
  };
 }
 
 if(!_pDataset.getViewGdmiColumn) {
  _pDataset.getViewGdmiColumn = function(nRow, sCol) {
  
   try{
    return this._viewRecords[nRow][sCol];
   }
   catch(e){}
  };
 }
};

 

6.2 prototype 사용하도록 호출

      this.calculatorInitSet();

6.3 prototype 사용

      this.ds_name.getGdmiColumn(row, 'colid');

      this.ds_name.setGdmiColumn(row, 'colid', '값');

'Nexacro-이론 및 튜닝 > 기본문법' 카테고리의 다른 글

Nexacro-Null  (0) 2017.02.13
Nexacro - Array.초기화  (0) 2017.01.31
Nexacro 문법 - do while  (0) 2017.01.22
Nexacro 기본문법.Array2  (0) 2017.01.22
Nexacro 기본문법 - Array  (0) 2017.01.22
Posted by 농부지기
,

[ Nexacro-Null ]


1. filter 에서 Null   

 

 ds_schInvStatus.Filter("attribute2=='Y' || code==null");




'Nexacro-이론 및 튜닝 > 기본문법' 카테고리의 다른 글

Nexacro-튜닝포인트  (0) 2017.09.28
Nexacro - Array.초기화  (0) 2017.01.31
Nexacro 문법 - do while  (0) 2017.01.22
Nexacro 기본문법.Array2  (0) 2017.01.22
Nexacro 기본문법 - Array  (0) 2017.01.22
Posted by 농부지기
,

[ Nexacro - Array.초기화 ]


var aColId = ["11", "222", "333"];

'Nexacro-이론 및 튜닝 > 기본문법' 카테고리의 다른 글

Nexacro-튜닝포인트  (0) 2017.09.28
Nexacro-Null  (0) 2017.02.13
Nexacro 문법 - do while  (0) 2017.01.22
Nexacro 기본문법.Array2  (0) 2017.01.22
Nexacro 기본문법 - Array  (0) 2017.01.22
Posted by 농부지기
,

    [  ◎ Nexacro - while, do while ] 

    

 

 
 

 

while(true/false){

    ...

    break;

}

 


do{
     ...
     break;
}while(true / false)

'Nexacro-이론 및 튜닝 > 기본문법' 카테고리의 다른 글

Nexacro-튜닝포인트  (0) 2017.09.28
Nexacro-Null  (0) 2017.02.13
Nexacro - Array.초기화  (0) 2017.01.31
Nexacro 기본문법.Array2  (0) 2017.01.22
Nexacro 기본문법 - Array  (0) 2017.01.22
Posted by 농부지기
,

[  ◎ Nexacro 기본문법 Array  ]     

 

 

 
 


var aTemp = [];
for (var i=0; i<10; i++){
        aTemp.push(i);
}
aTemp.sort();
===================================
var objArray = new Array(1,2,3);
 

 2차원 배열
 

 
function fn_return(pnRow)
{
        var rtnArray = new Array();
        var nCheckRow =0;
        var nIdx=0;
        
        nCheckRow = 0;
        do{
                nCheckRow = dsMain.findRow("CHK", "1", nCheckRow, 99999);
                if (nCheckRow < 0) break;
                var aShop = new Array();
 
                aShop[0] = dsMain.getColumn(nCheckRow, "SHOP_CD");
                aShop[1] = dsMain.getColumn(nCheckRow, "SHOP_NM");
                aShop[2] = dsMain.getColumn(nCheckRow, "DIV_LVL_NM");
                aShop[3] = dsMain.getColumn(nCheckRow, "BRAND_CD");  
                rtnArray[nIdx] = aShop;
                
                nIdx ++;
                nCheckRow ++;
                
        }while( true) ;
}
 

  3차원 배열

 


function Button00_onclick(obj:Button, e:ClickEventInfo)
{
   var defaultNation = new Array(10);
   for ( var i=0;i<defaultNation.length;i++ ){
      defaultNation[i] = new Array(10);

      for(var j=0;j<10;j++){
         defaultNation[i][j] = new Array(10);
      }
   }
 
   //defaultNation[0][0] = "AFGHANISTAN";
   //defaultNation[0][1] = "230";
   //defaultNation[0][2] = "420";
 
   defaultNation[0][0][0] = "AFGHANISTAN";
   defaultNation[0][0][1] = "22222222";
   trace(defaultNation[0][0][0]);
   trace(defaultNation[0][0][1]);
}
 

'Nexacro-이론 및 튜닝 > 기본문법' 카테고리의 다른 글

Nexacro-튜닝포인트  (0) 2017.09.28
Nexacro-Null  (0) 2017.02.13
Nexacro - Array.초기화  (0) 2017.01.31
Nexacro 문법 - do while  (0) 2017.01.22
Nexacro 기본문법 - Array  (0) 2017.01.22
Posted by 농부지기
,

[ Nexacro 기본문법 - Array ]   

  

☞ 추가내용
 

  배열생성서 : var arr_Name = Array(10);
  배열을 argument로 바로 넘길때 :   
     배로 생성하면서 넘길 수 없다.
     error) cf_functionName(var1, Array("kkk",  "bbb" "ccc"));  는 안됨
     정상)  cf_functionName(var1, ("kkk bbb ccc"));   //후
          function cf_FunctionName(va1, arr_Name){
             var arr_New = split(arr_Name, " ");  
          }
  배열시작 index 는 : 0 부터

'Nexacro-이론 및 튜닝 > 기본문법' 카테고리의 다른 글

Nexacro-튜닝포인트  (0) 2017.09.28
Nexacro-Null  (0) 2017.02.13
Nexacro - Array.초기화  (0) 2017.01.31
Nexacro 문법 - do while  (0) 2017.01.22
Nexacro 기본문법.Array2  (0) 2017.01.22
Posted by 농부지기
,