Dev scoffed. "The portal has the what . This PDF has the why ." He tossed the binder onto her desk. It landed with a heavy thud. "Someone from the old Bangalore team printed it years ago. The last chapter saved my hide on a FI-CA project. It'll save yours."
Instead of one monstrous report, she built a core class: ZCL_SALES_INVOICE . Then, for the different customer types—wholesale, retail, export—she created subclasses . ZCL_WHOLESALE_INVOICE added a trade discount method. ZCL_EXPORT_INVOICE added customs declarations. The main report shrank from 10,000 lines to 200 lines of orchestration. bc401 abap objects pdf
Anika opened it. The first pages were the standard SAP curriculum: "Encapsulation," "Inheritance," "Polymorphism." But as she flipped through, she saw notes in the margins. Tiny diagrams. Arrows connecting a class for ZCL_DOCUMENT to an interface ZIF_PRINTABLE . Someone had written in red pen: "This is how you kill GOTO." Dev scoffed
Anika stared at the screen, the blinking cursor a mocking reminder of her deadline. Her boss, Klaus, needed a complete overhaul of the old Z_SALES_INVOICE report by Friday. The problem? The report was a 10,000-line spaghetti monster of procedural ABAP, held together with GOTO statements and prayers. It landed with a heavy thud
"What is this?" he whispered.
She looked at the binder. It wasn't just a PDF. It was a map left by someone who had wrestled the old beast and won. She put it in her drawer, next to her coffee mug.