diff --git a/packages/runtime/src/statements/create_data.ts b/packages/runtime/src/statements/create_data.ts index 159a264ef..10323aa90 100644 --- a/packages/runtime/src/statements/create_data.ts +++ b/packages/runtime/src/statements/create_data.ts @@ -1,5 +1,5 @@ import {clone} from "../clone"; -import {ABAPObject, Character, DataReference, Date, String, FieldSymbol, Float, Integer, Structure, Table, Time, XString, Hex} from "../types"; +import {ABAPObject, Character, DataReference, Date, String, FieldSymbol, Float, Integer, Structure, Table, Time, XString, Hex, Packed} from "../types"; import {ICharacter} from "../types/_character"; import {INumeric} from "../types/_numeric"; @@ -62,6 +62,15 @@ export function createData(target: DataReference, options?: ICreateDataOptions) target.assign(new Hex({length: length})); } break; + case "P": + { + let length = 1; + if (options.length) { + length = options.length.get(); + } + target.assign(new Packed({length: length})); + } + break; case "F": target.assign(new Float()); break;