私はSQL Serverのテーブルから状態平面の座標を取得し、Javaアプリケーションへの入力として機能する連結された100の文字列でオブジェクトを設定しました。PowerShellオブジェクトのテキストにアクセスする。なぜそれが配列に格納されているように見えないのですか?
$key = Invoke-Sqlcmd -Query "SELECT DISTINCT CONCAT('spc,'<spcZone>,',',
<northing>,',',<easting>, ',',<units>,',',<inDatum>,',',<outDatum>) as
conversionString FROM <source table>;" -ServerInstance "<server>" -Database
"<database>"
結果は配列に次のようになり100の文字列になります。私は、NOAAのgtkのJavaアプリケーションを使用して、変換するすべての100回の観測を介して実行
spc,2402,173099.419,503626.812,m,NAD83(2011),NAD83(2011)
:
$result = FOREACH ($k in $key.conversionString)
{
java -Dparms="$k" -jar H:\gtk\jtransform_thin.jar
}
1つの観測値の出力は次のようになります。
{
"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と入力すると返されるものはありません。私が取得しようとしていますどこ
これは、次のとおりです。
$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
}
私はPowerShellで2週間の経験を持って、私が間違って何をやっていますか?何か助けてくれてありがとう。
Hey Travis。私は$ resultがどんなタイプであるかを知ることができません。 $結果を教えてください| Get-Memberが吐き出す –
@ JohnDonnelly文字列配列です。これは、外部プログラムから出力をキャプチャするときに起こります。 – TheIncorrigible1