본문 바로가기

대외활동/TNS Internship

100125 TNS Korea Internship (30/53)

728x90

1. 

Eric Salama, chief executive of WPP's research division Kantar, send me(of course all of employees) a mail.

Their focus this year is on “excellence in execution”.  That is not a bad motto for us either. 
그들의 올해 초점은 "실행에서의 탁월함" 이다.그건 우리에게도 나쁜 모토는 아니다. 

Pedro ros의 이메일에서 Webinar라는 용어가 나왔는데, 웹에서 하는 세미나라는 의미로 추측했다.
역시나, Web conferencing [webinar]라고 정의되어 있었다. 
Web + Seminar = Webinar겠지?

이걸로 3일에 걸쳐 진행되었던 영문 업무 메일 참조를 마무리짓도 다시 intranet에 있는 CAWI파트를
꼼꼼히 보도록 한다.


2.
 
RequireMultiIn3DGrid()
 : 3D그리드에서 Multi Object를 Column으로 가질 때 적어도 하나의 값을 선택하게 하는 validate 옵션
하지만 Properties에서 Not Required를 찍지 않는 이상 confirmit 자체적으로 "하나 이상의 값을 선택하라"는
에러메시지를 띄워준다.

3. 

Check3DGridRowSumAtLeast(qSet, minNum)

사용자 삽입 이미지

이와 같이 가로줄의 합을 계산하여 그 값이 Least 이하이면 에러메시지를 출력해주는 함수이다.
기본적으로 confirmit에서 제공해주지는 않는 global cawi function 중의 하나이다.
코드는 다음과 같다.

function Check3DGridRowSumAtLeast(qSet, minNum)

{

var totalSumForRow = 0;

var allQIDArr = qSet.members();

var repQID = allQIDArr[0];

// DEBUG("repQID = " + repQID );

// global initializations

var allPrecodesArr = f(repQID).domainValues(); // retrieves an Array of all possible Answer precodes

for (var i = 0; i < allPrecodesArr.length; i++)

{

var currentPrecode = allPrecodesArr[i];

totalSumForRow = Get3DGridRowSum(qSet, currentPrecode)

// DEBUG("totalSumForRow " + i + " = " + totalSumForRow );

      if (totalSumForRow < minNum)

      {

RaiseError();

AppendQuestionErrorMessage(LangIDs.en, "The sum for row «" + f(repQID)[currentPrecode].label() + "» must be at least " + minNum + ". The current sum for this row is " + totalSumForRow + ".");

      } // end if

} // end i loop

} // end function


그렇지만 인트라넷에서 저 중간의 Get3DGridRowSum 를 제공해주지 않았던 것.
이런 황당한 경우가 -_-;;
그래서 직접 만들기로 했다.
시간관계상 중간과정은 생략한다.
내가 만든 Get3DGridRowSum 함수는 다음과 같다.

function Get3DGridRowSum (qSet, currentPrecode)
{
      var myArray=new Array()
      var sw=1;
      var counter=0;
      var totalSumForRow = 0;
      var allQIDArr = qSet.members();
      for (var ii=0; ii<allQIDArr.length; ii++)
      {
          var current = allQIDArr[ii];
          ShowAlert(f(current)[currentPrecode])
          totalSumForRow = Number(totalSumForRow) + Number(f(current)[currentPrecode])
      }
      return totalSumForRow ;
}
이렇게 해서 완성.
그렇게 자주 쓰일 것 같진 않지만 3DGrid하에서 가로열에 validation을 걸고 싶은 경우 유용하겠다.


728x90