All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sap.cloud.sdk.s4hana.datamodel.bapi.functions.DefaultAcctngDocumentPostFunctionResult Maven / Gradle / Ivy

/*
 * Copyright (c) 2019 SAP SE or an SAP affiliate company. All rights reserved.
 */

package com.sap.cloud.sdk.s4hana.datamodel.bapi.functions;

import java.util.List;

import com.google.common.collect.Lists;
import com.sap.cloud.sdk.result.ResultElement;
import com.sap.cloud.sdk.s4hana.connectivity.rfc.BapiQueryResult;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.structures.ReturnParameter;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.LogicalSystemOfSourceDocument;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.ObjectKey;
import com.sap.cloud.sdk.s4hana.datamodel.bapi.types.ReferenceTransaction;

import lombok.EqualsAndHashCode;
import lombok.RequiredArgsConstructor;
import lombok.ToString;

@RequiredArgsConstructor
@EqualsAndHashCode
@ToString
public class DefaultAcctngDocumentPostFunctionResult
    implements AcctngDocumentPostFunctionResult
{

    private final BapiQueryResult result;

    /**
     * See also the {@link com.sap.cloud.sdk.s4hana.datamodel.bapi.functions.AcctngDocumentPostFunctionResult#getReferenceProcedure() interface}
     * 
     * @return
     *     Reference procedure
     */
    @Override
    public ReferenceTransaction getReferenceProcedure() {
        return result.get("OBJ_TYPE").getAsObject().as(ReferenceTransaction.class);
    }

    /**
     * See also the {@link com.sap.cloud.sdk.s4hana.datamodel.bapi.functions.AcctngDocumentPostFunctionResult#getReferenceKey() interface}
     * 
     * @return
     *     Reference key
     */
    @Override
    public ObjectKey getReferenceKey() {
        return result.get("OBJ_KEY").getAsObject().as(ObjectKey.class);
    }

    /**
     * See also the {@link com.sap.cloud.sdk.s4hana.datamodel.bapi.functions.AcctngDocumentPostFunctionResult#getLogicalSystemOfSourceDocument() interface}
     * 
     * @return
     *     Logical system of source document
     */
    @Override
    public LogicalSystemOfSourceDocument getLogicalSystemOfSourceDocument() {
        return result.get("OBJ_SYS").getAsObject().as(LogicalSystemOfSourceDocument.class);
    }

    /**
     * See also the {@link com.sap.cloud.sdk.s4hana.datamodel.bapi.functions.AcctngDocumentPostFunctionResult#getMessages() interface}
     * 
     * @return
     *     Return parameter
     */
    @Override
    public List getMessages() {
        final List list = Lists.newArrayList();
        for (ResultElement row: result.get("RETURN").getAsCollection()) {
            list.add(row.getAsObject().as(ReturnParameter.class));
        }
        return list;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy