Currently, it is possible to confirm a shipment with all shipped quantities being zero. This does not make much sense, as there is no point to confirming a shipment if there is nothing actually shipped.
During order fulfillment (i.e. on the “View Shipment” screen), after entering 0 as fill quantity for all line items, when trying to confirm the shipment, the shipment shouldn’t be confirmed. Instead, a notification that shipment confirmation had failed should occur, along with a modal with an error message stating that at least one item should have fill quantity over zero;
The “Fulfill Orders” screen’s appearance should be changed in such a way that it would be similar e.g. to the “Manage PoDs” screen; i.e. the “Fulfill” and “Annul” buttons would be available next to each order on the list;
By choosing the “Annul” option, it would be possible to get rid of a shipment that we wouldn’t want to or be able to fulfill. After confirming the annulment, the order’s status would change to “ANNULLED”;
No Proof of Delivery should be created after the order's annulment.
The discussion concerning the proposed solution to the issue is available here: https://forum.openlmis.org/t/desired-behavior-for-shipments-with-0-fill-quantity-for-all-items/5289. The expected behavior was also discussed during the Product Committee meeting, the notes on which can be found here: https://openlmis.atlassian.net/wiki/spaces/OP/pages/580386884/Implementers+-+October+1+2019.