2013년 6월 24일 월요일

tekla template

문자열 제어

"(CAMBER은 ="+  중간 ( GetValue를 ( "MAINPART.FINISH"), 발견 ( GetValue를 ( "MAINPART.FINISH") GetFieldFormula - 1, 2) ( "ValueField_1")) + ")"

ValueField_1의 값은 "("
"("을 직접 대입했을 경우 구문 오류를 일으켜서 따로 vlauefield로 설정 후 대입해서 원하는 결과를 얻을수 있었다.

행 조건은
경우 ( 발견 ( GetValue를 ( "MAINPART.FINISH"), GetFieldFormula ( "ValueField_1")) ! = "-1")를 다음
  출력 ()
그렇지 않으면
  스텝 오버 ()
ENDIF

가 값을 차지 못하면 -1을 반환하는 듯해서 찾을 수 있습니다.


조립 위치 중 "P"글자의 위치를​​ 알아 네고 0 위치부터 P의 앞에 앞에까지만 출력
숫자 인 뎃스주의.
미드 ( GetValue를 ( "ASSEMBLY_POSITION_CODE"), "0" 찾을 ( GetValue를 ) ( "ASSEMBLY_POSITION_CODE"), "P"-1)

PL4.5 * 200.5 * 1000 일 경우 PL4.5는 규격 (철판 두께)이므로 그데로 두면서 폭 200.5 만
소수점을 잘라야한다면.

mid(GetValue("PROFILE"),0,find(GetValue("PROFILE"),"*"))+mid(mid(GetValue("PROFILE"),find(GetValue("PROFILE"),"*"),length(GetValue("PROFILE"))),0,find(mid(GetValue("PROFILE"),find(GetValue("PROFILE"),"*"),length(GetValue("PROFILE"))),"."))

만약 중첩

if (a ==의 b) then
   와 B 형는 같다.
else
   if(== ℃) then
      와 C는 같다.
   else
      if  (== d를)  then
         와 D는 같다.
      else
        if  (== f를)  then
            와 F는 같다.
         else
            if  (==를 들면)  then
               와 H는는 같다.
           else
              와 같은 것은 없다.
           endif
         endif
      endif
   endif
endif

별도의 문법은없고 (다른 안됨 안됨, SWICH는 경우) 그냥 겹쳐서 쓴다.


ISSET ()

/ /  속성이 값을 가지고 있는지를 확인
/ / "USERDEFINED.comment"속성의 값이 있다면 행 출력
만약  ( ISSET ( "USERDEFINED.comment"))  다음
   출력 ()
그렇지 않으면
   스텝 오버 ()
ENDIF 

날짜 형식

날짜 형식을 바꾸는 것은 아니고 문자열을 바꾸는 것

http://teklastructures.support.tekla.com/190/en/rep_defining_own_date_format


P / P (포인트 간 거리)

부재의 시작점과 끝점 사이의 거리를 얻을수있다.  SQRT (
sqsum (
( GetValue를 ( "ASSEMBLY.MAINPART.END_X")
-GetValue를 ( "ASSEMBLY.MAINPART.START_X"))
( GetValue를 ( "ASSEMBLY.MAINPART.END_Y")
-GetValue를 ( "ASSEMBLY.MAINPART.START_Y")) 
( GetValue를 ( "ASSEMBLY.MAINPART.END_Z")
- GetValue를 ( "ASSEMBLY.MAINPART.START_Z")) 
)
)

출처는 T & P

리포트 작성 후 리포트 내용을 클릭 (선택)했을 때 모델이 하이라이트

리포트 작성시 "ID :"+ GetValue를 ( "ID") 를 행에 넣어 주면된다. 

댓글 없음 :

댓글 쓰기