# メソッド ## getAllRecords 全てのRecordsデータを取得して、JvmaRecordオブジェクト配列を返します。 ```swift func getAllRecords() -> [JvmaRecord]! ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - [JvmaRecord] - [JvmaRecord](JvmaRecord_index.rst)オブジェクトの配列 ``` ### サンプルコード ```swift let resultArray: [JvmaRecord] = jvmaResult.getAllRecords() ```   ## getRecordWithDataId 識別コードを指定して、Recordデータを取得します。 ```swift func getRecordWithDataId(_ dataId: JvmaDataIdCode) -> JvmaRecord! ``` ### パラメータ ```{list-table} :align: left :class: list-table * - 引数名 - 型 - 説明 * - dataId - JvmaDataIdCode - 詳細は[JvmaDataIdCode](JvmaDataId_method.md#jvmadataidcode)を参照 ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - JvmaRecord - [JvmaRecord](JvmaRecord_index.rst)オブジェクト ``` ### サンプルコード ```swift let jvmaResult = JvmaResult.init() let resultRecord: JvmaRecord = jvmaResult.getRecordWithDataId(dataId) ``` ## JvmaResult処理フロー ```swift // まず返したオブジェクト(results)はJvmaResultオブジェクトのタイプであるかどうかを判断します。 guard let jvmaResult: JvmaResult = results as? JvmaResult else { self.sendMessage("JvmaResult is error.") return } // 次にJvmaResultオブジェクトにErrorが存在するかどうかを判断します。 // 存在する場合、処理を中止します。 if let jvmaError = jvmaResult.error { // JvmaSDK is error return } // 次にJvmaResultオブジェクトにNAKが存在するかどうかを判断します。 // 存在する場合、処理が中止します。NAK Codeは「JvmaNAKData」オブジェクト内の「hexStatus」メソッドで取得でき、 // NAK情報は「JvmaNAKData」オブジェクト内の「nakMessage」メソッドで取得できます(詳細は「3.8 JvmaNAKData Class」をご参照ください)。 if let jvmaNAK = jvmaResult.nak { let nakStatus: String = jvmaNAK.hexStatus; let nakMessage: String = jvmaNAK.nakMessage; return } // 次にJvmaResultオブジェクトに自販機からデータを返したかどうかを判断します(JvmaTextオブジェクト)。 // 存在する場合、データ(JvmaTextオブジェクト)に対して以下の処理をする必要があります。 if !Array(jvmaResult.jvmaTexts).isEmpty { guard let list = jvmaResult.getAllRecords() else { return } for jvmaRecord: JvmaRecord in list { guard let jvmaDataId = jvmaRecord.jvmaDataId else {return} // JvmaDataIdCode let jvmaDataIdCode: String = jvmaDataId.hexStrCode for jvmaItem: JvmaItem in jvmaRecord.items { // JvmaItem value let jvmaItemData: String = jvmaItem.hexStr; } } } // 最後にJvmaResultプロジェクトにACKが存在するかどうかを判断します。 // 「JvmaACKData」にACK情報を保存しています(詳細は「3.7 JvmaACKData Class」をご参照ください)。 if jvmaResult.ack != nil { // 正常に終了 return } ```   --- # プロパティ ## error - 型:JvmaError - 説明:詳細は[JvmaError](JvmaError_index.rst) クラスを参照 - 読み取り/書き込み:読み取り専用 ```swift var error: JvmaError!{ get } ``` ## ack - 型:JvmaACKDataオブジェクト - 説明:詳細は[JvmaACKData](JvmaACKData_index.rst) クラスを参照 - 読み取り/書き込み:読み取り専用 ```swift var ack: JvmaACKData! { get } ``` ## nak - 型:JvmaNAKDataオブジェクト - 説明:詳細は[JvmaNAKData](JvmaNAKData_index.rst) クラスを参照 - 読み取り/書き込み:読み取り専用 ```swift var nak: JvmaNAKData! { get } ``` ## jvmaTexts - 型:NSMutableArray - 説明:[JvmaText](JvmaText_index.rst)オブジェクトの配列 - 読み取り/書き込み:読み取り専用 ```swift var jvmaTexts: NSMutableArray! { get } ```