MiPlatform 2. Application Group 추가하기

1. 정의 : 시스템용 Application을 생성한다.

2. 생성순서
   a. 메뉴 : Project Explorer에서 -> 기존 Application 목록 선택 -> 마우스로 double click한다.
     

       



  b. 왼쪽 하단에 있는 [+]버튼을 눌러서 javaScript용 App Group을 하나 만든다.
     아래 붉은 부분대로 속성을 변경한다.
     중요속성 : Type - js
                별도의 공통 JavaScript 파일을 만들려면  반드시 App에서 Type이 js가 있어야 한다.

     

       



 c. 왼쪽 하단 [+]를 눌러서  'SsSys' form 생성용 App Group을 하나 더 만든다.

    

    




d. App Group 만들어진 상태
    

      



.           Copyright(c) www.keiis.co.kr/study. Allrights reserved.

 

 

Posted by 농부지기
,

                  MiPlatform 1. 프로젝트 생성하기

1. 정의 : Application을 생성하려면 마이플랫폼에서는 프로젝트를 생성해야 된다.

2. 생성순서
   a. 메뉴 : Tools -> Project Manager를 클릭
    

       

 

   b. Project Manager에서 신규프로젝트를 만들기 위해서는 하단 [New Project] 버튼을 클릭 한다.
    

       



   c. Step 1단계
      •  Name : 프로젝트 이름을 등록한다.
      •  Character Set : 프로젝트에서 사용할 언어종류를 설정한다. 
      
•  Working Folder : 프로젝트가 사용할 Root Folder를 선택한다.
    

       



  d. Step 2
     •  Size : 프로젝트의 기본 화면 Size를 지정한다.
     •  Caption, Menu, Status : MiPlatform Browser에서 Caption Bar, Menu Bar, Status Bar 존재 여부 결정
                               즉, 프로젝트(어플리케이션)를 실행시키면 MiPlatform Browser가 실행된다.
                               이때 이 Browser를 어떤게 띄울지 속성을 지정하는 옵션이다.
     

       



  e. Step 3
     •  Update URL :Component의 Upgrade시 Component의 Version Up을 수행하는
                   Server측 Component dll의 Url경로를 의미한다.

                   참고, 사실 Updater에서 이미 한번 실행하기 때문에 이곳에 URL을 주면
                         두번 실행하게 된다. 결론, URL을 주지 말라.

    

      



   f. Step 4
      •  Default App : Project에는 화면을 하나 만들더라도 AppGroup은 반드시 하나는 있어야 한다.
      •  Project File(Start XML) Path : Start XML의 Path를 지정한다.
      •  BaseUrl    : 화면 UI xml파일만 저장 될 폴더 위치
      
•  Script Url : 화면 Logic인 java scipt 만 저장 될 폴더 위치                           
 
      참고, 보통 [BaseUrl]과 [Script Url]은 동일하게 하여  화면XML과 JavaScript XML은
            한나의 XML에 위치시킨다.   

    

       



   g. Project Wizard가 완료 되면
      PID에 초기 Application이 하나 생성 된다.
      

        



   h. [Attributes] Tab에 가서
        - Attributes.Hideframe  : True

        - Attributes.SessionURL : RrEnv::EnvLogin.xml
        - Resource.URL          : RrEnv::imgRes.res
      (참고, 위 2개의 파일 xml과 res 는 차후에 만들 것이다.)


      

        





.           Copyright(c) www.keiis.co.kr/study. Allrights reserved.          



Posted by 농부지기
,

               MiPlatform 0. 프로젝트에 대한 소개

1. 정의 : 이 프로젝트는 초보자용일 수도 있고, 중급자, 고급자까지 도 많이 활용 될 수 있다.

2. 특징 : 실제 프로젝트 라기 보단, TA들이 초반에 MiPlatform에 대한 Frame Work을 잡을 때 많이 활용될 수
          있는 프로젝트이다.
          DataBase와는 접속하지 않지만 메뉴가 클릭 되면 원하는 Form이 MDI 창에 Sheet로 Open된다. 


3. 활용 Tip
   A. MDI 활용
   B. TOP, LEFT에 Frame 설정하기
   C. 메뉴를 클릭 시 Sheet로 Open하기
   D. Open된 여러 Sheet들에 대해서 상단에 Tab으로 처리 된다.

   * 아래에 개발 완료된 화면이 있다.

4. 아직 몇가지 미흡하지만 먼저 올려 봅니다.
   . 왼쪽 메뉴 안됩니다.
   . 화면에 버튼들은 넣지 않았습니다.
   . 하지만 지금까지 되어 있는걸로 충분히 소화할 수 있다고 봅니다.
   

5. 개발완료된 최종 화면
   


* 후기 : 생각 했던거 보다 시간이 많이 소요 되었네요.
        처음 MiPlatform을 접한 후  [http://cafe.naver.com/integrate]에 가입해서 [또마네님]의 도움으로
        위 프로젝트를 완성했습니다.
        아직 갈길은 멀지만 [또마네님]의 도움을 받았기 때문에 저도 많은 분들에게 도움이 될 수 있을지 몰라서
        이 문서를 만들어 봤습니다. (받은 만큼.. 아니 그 이상으로 베풀어라~~ ^^)
          처음 접하는 개발자들도 아마 따라하기 쉽게 모든 화면을 capture했습니다.
        많은 도움 되었으면 하네요.  

제가 관리하는 농부 공부방입니다... 많이 와서 좋은 자료 받아가세요.

농부공부방 ->  http://www.keiis.co.kr/study              
 

 

Posted by 농부지기
,

[ Nexacro Transaction시 모래시계처리]

 

☞ 추가내용
 

* Transaction시 마우스 커서를 모래시계로 변경되지 않도록 처리
   1. 정의 : Http통신중 마우스 커서를 Wati Cursor로 변경할지 여부를 저장하는 Property 이다.

   2. {
         http.UserWatiCursor=false;
         Transaction( ,,,, );
       }
       function callback(,,,){
           http.UseWaitCursor = true;
      }

 

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 Grid - 한컬럼에 여러줄 보여주기 ]     

한컬럼에 여러줄일경우 여러주 다 보여주기 (AutoHeight 기능)

Grid.UseAutoSizing = 'Row'

Grid.UseExSizing = 'Row'

이때 그리드 Cell속성에도 더 변경해줘야 된다.

Cell.wordwrap.Word : MultiLine속성과는 상관없이 영문자/한글등에 대해 단어단위로 새라인에출력

    .ExChar : WordWrap시 한글등의 2바이트 문자등에 대해서는 글자단위로 새라인에 출력.

              영어의 경우 Word 단위로 WordWrap 하며, 하나의 Word 크기가 셀크기를 넘을

              경우에도 단어단위로 출력

     .AllChar : WordWrap시 한글등의 2바이트 문자등에 대해서는 글자단위로 새라인에 출력.

                영어의 경우 Word 단위로 WordWrap 하며, 하나의 Word 크기가 셀크기를

                넘을 경우에는 글자단위로 새라인에 출력

                   
 

☞ 추가내용

 

  Expr에서 넣을 수 있는 변수
     - getRowType     : insert, update, delete, normal
     - currow         : 현재 row (0 인가? 1인가 ? 부터 시작)  
  
  
Expr에 넣을 수 있는 함수
     - decode()       : Oracle decode 와 사용방법 동일

  Script에서 처리방법  
     -
컬럼 hidden처리         : script 에서  [gr_name.SetColProp(7, "Width", "0"); ]
     -
row순서 및 위치 변경    : script에서   [gr_name.MoveRow() ]  
     -
index의 컬럼명 가져오기 : gr_Name.GetCollPro("body", index, "COLID") 
                                 참고로, cursor위치의 컬럼명을 가져오려면
                                 gr_Name.GetCollPro("body", gr_Name.GetCellPos(), "COLID") 

     -
index의 헤드명 가져오기 : gr_Name.GetCollPro("head", index, "COLID")

   
   

☞ POP_UP

 

1. Modal Dialog
   • 호출시 : str_argument = "변수1=값1 변수2=값2";
              result = Dialog("APP_NAME::FORM_NAME.XML", str_argument,
                               테두리를제외한 Width, 테두리를 제외한 Heigh,
                               strOpenStyle(true이면 CloseFlag설정), 왼쪽좌표, 위쪽좌표) ;
   • pop_up창에서
     - str_argument를 받는 방법
        1. form 변수 선언
        2. 모든 function에서 바로 argument이름으로 사용가능
           즉, 별도 argument을 setting할 필요 없이 바로 사용가능한다.
     - 값 return 한가ㅣ
       1. close(rtn_Value);  

'Nexacro-Grid > Grid' 카테고리의 다른 글

nexacro.Grid cell drag & drop  (0) 2017.03.30
Grid.sort 개발중  (0) 2017.02.24
Nexacro Grid -Combo Filter (필터) 처리  (0) 2017.01.22
Nexacro Grid - ToolTip  (0) 2017.01.22
Nexacro Grid - Self 객체  (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 농부지기
,

[  ◎ Nexacro Combo Filter (필터) 처리  ]

 

☞ 정의 : 사용자가 콤보를 edit할 수 있고, 이때 콤보에 존재하는 값을 key in 시 바로 필터처리를
          해서 선택의 폭을 줄여 준다.

* 콤보 필터
A. 사용방법
    1. 콤보 속성 : type = filter
    2.                    displantnulltext = '전체'  또는 '선택'
    3. 콤보.ontextchanged(obj:Combo, e:TextChangedEventInfo) event 추가
             script : if (gfn_isNull(e.posttext)) obj.value = '';
B. 설명
    1. type = filter                           
--이 설정으로 combo에 typeing이 가능해진다.
    2. displantnulltext = '전체'  또는 '선택'  
--null값일 경우 default로 보여주는 값
    3. ontextchanged() event
- 사용자가 콤보값을 선택 후  강제로 콤보값을 지우고
                               focus를 이동했을 경우 콤보에 값이 지워지지 않고 처음
                               선택되었던 값 그대로 남아 있게 된다.
                               그래서 ontextchanged() event에서 강제로 value를 공백으로
                               넣어 줘야 값이 지워진다.

'Nexacro-Grid > Grid' 카테고리의 다른 글

Grid.sort 개발중  (0) 2017.02.24
Nexacro Grid - 한컬럼에 여러줄 보여주기  (0) 2017.01.22
Nexacro Grid - ToolTip  (0) 2017.01.22
Nexacro Grid - Self 객체  (0) 2017.01.22
Nexacro Grid - 라인 컬러 지정하기  (0) 2017.01.22
Posted by 농부지기
,

[  ◎ Nexacro Grid - ToolTip ]     

 

 

 
 


1. ToolTip 을 조회 시 라인이 변경될 경우 해당 라인에 ToolTip으로 변경하고 싶을 경우
    Grid.tooltiptype='hover';

2. ToolTip의 폰트는 css 로 변경할 수있다.
    단, 모든 tooltip은 동일하게
 
Tooltip
{
        border            : 2 double #767676ff white ;
        bordertype        : round 5 5;
        gradation         : linear 0,0 #FEFEFE 0,100 #E1E1E1;
        color             : #FFFF80;
        font              : dotum,20,bold;
        padding           : 4 6 4 22;
        margin            : -20 10 20 6 ;
        shadow            : drop 0,1 1 #00000033 ;
}
 

 

Posted by 농부지기
,