gdxxrw8.gms : GDXXRW - intAsText 옵션 테스트

설명

세트 요소가 스프레드시트에 기록되었습니다. 그 중 일부는 적절한 정수입니다.
다른 사람들은 그렇지 않습니다. intAsText 활성화 및 비활성화에 대한 결과가 확인됩니다.

기고자: Jan-Erik Justkowiak, 2018년 9월

소형 모델 유형 :슬롯 사이트


카테고리 : 슬롯 사이트 테스트 라이브러리


메인 파일 : gdxxrw8.gms

$title GDXXRW - intAsText 옵션 테스트(GDXXRW8,SEQ=777)

$onText
설정된 요소는 스프레드시트에 기록됩니다. 그 중 일부는 적절한 정수입니다.
다른 사람들은 그렇지 않습니다. intAsText 활성화 및 비활성화에 대한 결과가 확인됩니다.

기고자: Jan-Erik Justkowiak, 2018년 9월
$offText

$callTool win32.msappavail Excel
$if errorlevel 1 $abort.noError "사용 가능한 Excel이 없습니다."

* intAsText 활성화 및 비활성화로 작성될 요소를 설정합니다.
i/i1, 1i, 5, '1 2', '3.14', '3,14', 007, '007.1', '007,1', '-8', 770, '7.7E+02', '7,7E+02', '$5', '5$', '123', "234", "'345'", '"456"' /;

$gdxOut set.gdx
$unLoad i
$gdx아웃

* Excel에서 공식이 지워지는 것을 방지하려면 value=noData를 사용하세요.
* 셀에 기록된 값의 형식이 텍스트인지 숫자인지 나타냅니다.
$onEcho >howToWrite.txt
set=i rng=A2 intAsText=y 값=noData
set=i rng=A6 intAsText=n 값=noData
$offEcho

$call gdxxrw set.gdx 출력=testIntAsText.xlsx @howToWrite.txt 추적=0
$ifE errorLevel<>0 $abort 스프레드시트에 쓰는 동안 오류가 발생했습니다!

* 예상되는 결과
별칭(intAsText_Y, i);

* 이는 적절한 정수이며 intAsText=N인 경우 정수로 작성해야 합니다.
intAsText_N / 5, 007, '-8', 770, 123, 234 / 설정;

$gdxOut 예상결과
$unLoad intAsText_Y intAsText_N
$gdx아웃

* intAsText 활성화 및 비활성화로 작성된 데이터 읽기
* Excel에서 확인하면 값이 변환되므로 value=yn 옵션을 사용할 수 있습니다.
* 부울을 'Y'로 변환합니다. 수식 =IF(ISTEXT(A2);"Y";"N") 및 =IF(ISNUMBER(A6);"Y";"N")을 사용하여 'N'
* 원래 세트 요소를 가져오기 위해 intAsText_N 세트의 일부 행을 건너뜁니다.
$onEcho >howToRead.txt
set=intAsText_Y rng=A2 cDim=1 값=yn
set=intAsText_N rng=A2 cDim=1 값=yn 무시Rows=3:6
$offEcho

$call gdxxrw testIntAsText.xlsx 출력=results.gdx @howToRead.txt 추적=0
$ifE errorLevel<>0 $abort 스프레드시트를 읽는 동안 오류가 발생했습니다!

* 결과 확인
$call gdxdiff doneResults.gdx results.gdx > %system.nullfile%
$ifE errorLevel<>0 $abort 데이터가 올바르지 않습니다!