navidev-abap-gw-api
Version:
API para la extracción de datos de servicios SAP GW
74 lines • 2.75 kB
TypeScript
import { Entity } from "../gwMetadata/metadataTypes";
import { SelectFields } from "./crudOperationsTypes";
export type OptionsSAPJSON2Object = {};
export default class BaseUtils {
protected entityInfo: Entity;
protected odataVersion: string;
constructor(entityInfo: Entity, odataVersion: string);
/**
* Convierte valor para pasarlo por url para método como READ o PATCH
* @param value
* @param fieldName
* @returns
*/
protected convertQueryValue(value: any, fieldName: string): any;
/**
* Convierte el valor de un campo al formato de SAP.
* Nota importante: Para los método de READ y QUERY hay un determinados campos que se deben englobar
* en un tipo para que funcione. Por ejemplo, el campo de fecha que hay que poner datetime'<valor de la fecha>' para
* que funcione. Pero el formato de datetime'' no es válido para el método de POST/PUT/PATCH.
* @param value
* @param fieldName
* @returns
*/
protected convertJSON2SAPValue(value: any, fieldName: string): any;
/**
* Convierte una fecha en formato SAP a Date en formato javascript.
* @param value
*/
convertSAPDate2Date(value: string): Date | null;
/**
* Convierte la fecha de SAP con offset a Date en formato javascript.
* @param value
*/
convertSAPDateOffset2Date(value: string): Date | null;
/**
* Convierte el valor de un campo de SAP a JSON
* @param value
* @param fieldName
* @returns
*/
protected convertSAPValue2JSON(value: any, fieldName: string): any;
/**
* Devuelve si un campo existe en la entidad.
* @param fieldName
* @returns
*/
existeFieldEntity(fieldName: string): boolean;
/**
* Mapea un JSON a un objeto de salida solo con los campos de la entidad.
* @param json
* @returns
*/
mappingSAPJSON2Object<T>(json: Record<string, any>, selectFields?: SelectFields, options?: OptionsSAPJSON2Object): T;
/**
* Parsea un objeto al formato JSON que espera SAP.
* @param values
* @returns
*/
mappingObject2SAPJSON<D>(values: D, excludeFields?: SelectFields): string;
/**
* Convierte un Array en formato JSON a un Array de objetos con los campos de la entidad.
* @param json
*/
mappingSAPJSON2Array<T>(json: any[], selectFields?: SelectFields): T;
/**
* Mapeo de los campos de borrador que provienen del JSON
* @param key
* @param json
* @param jsonOutput
* @param selectFields
*/
protected mappingSAPJSONDraftFields(key: string, json: Record<string, any>, jsonOutput: Record<string, any>, selectFields?: SelectFields): void;
}
//# sourceMappingURL=baseUtils.d.ts.map