SQL Server 테이블에서 상태 평면 좌표를 가져 와서 Java 응용 프로그램에 대한 입력으로 사용할 100 개의 연결된 문자열로 개체를 채 웁니다.PowerShell 개체의 텍스트에 액세스. 왜 그것이 배열에 저장된 것처럼 보이지 않습니까?
spc,2402,173099.419,503626.812,m,NAD83(2011),NAD83(2011)
내가 다음 NOAA의 GTK 자바 응용 프로그램을 사용하는 모든 100 개 관찰을 통해 실행 변환 할 :
$key = Invoke-Sqlcmd -Query "SELECT DISTINCT CONCAT('spc,'<spcZone>,',',
<northing>,',',<easting>, ',',<units>,',',<inDatum>,',',<outDatum>) as
conversionString FROM <source table>;" -ServerInstance "<server>" -Database
"<database>"
결과는 배열에 다음과 같이 100 개 문자열 될 것
$result = FOREACH ($k in $key.conversionString)
{
java -Dparms="$k" -jar H:\gtk\jtransform_thin.jar
}
하나의 관측치에 대한 반환 된 출력은 다음과 같습니다.
{
"ID":"1489004917960",
"nadconVersion":"5.0",
"srcLat":"40.0000000000",
"srcLatDms":"N400000.000000",
"srcLon":"-80.0000000000",
"srcLonDms":"W0800000.000000",
"destLat":"40.0000000000",
"destLatDms":"N400000.000000",
"destLon":"-80.0000000000",
"destLonDms":"W0800000.000000",
"sigLat":"0.000000",
"sigLon":"0.000000",
"srcEht":"100.000",
"destEht":"100.000",
"sigEht":"0.000",
"srcDatum":"NAD83(1986)",
"destDatum":"NAD83(1986)",
"spcZone":"PA S-3702",
"spcNorthing_m":76470.584,
"spcEasting_m":407886.482,
"spcNorthing_usft":250887.241,
"spcEasting_usft":1338207.566,
"spcNorthing_ift":250887.743,
"spcEasting_ift":1338210.243,
"spcConvergence":"-01 27 35.224524",
"spcScaleFactor":0.99999024,
"spcCombinedFactor":0.99997455,
"utmZone":"UTM Zone 17",
"utmNorthing":4428236.065,
"utmEasting":585360.462,
"utmConvergence":"00 38 34.174932",
"utmScaleFactor":0.9996897,
"utmCombinedFactor":0.99967402,
"x":849623.061,
"y":-4818451.818,
"z":4078049.851,
"usng":"17TNE8536028236"
}
내가 겪고있는 문제는 저장된 $ 결과 개체의 반환 된 필드에 액세스하는 것입니다. $ result를 입력하면. 100 회의 모든 관측에서 모든 텍스트를 반환합니다. $ result [1]을 입력하면 첫 번째 관찰의 ID 만 얻습니다. $ result.ID를 입력하면 반환 된 항목이 없습니다. 내가 잘못 뭐하는 거지, 난 단지 PowerShell의 이주 경험이
$add = foreach ($r in $result)
{
"INSERT INTO SPCtoLatLong VALUES ('" + $r.spcZone + "','" +
$r.spcNorthing_usft + "','" + $r.spcEasting_usft + "','" + $r.srcLat + "','"
+ $r.srcLon + "','" + $r.srcDatum + "','" + $r.destDatum + "')" + $nl
}
:
이 내가하려고 노력하고 어디? 어떤 도움을 주셔서 감사합니다.
안녕하세요. 트래비스. 나는 $ result가 어떤 타입인지 알 수 없다. $ 결과를 알려주십시오. Get-Member는 침을 뱉습니다. –
@ JohnDonnelly 문자열 배열입니다. 외부 프로그램에서 출력을 캡처하면 이러한 현상이 발생합니다. – TheIncorrigible1