PharmacyInv: Desktop Inventory and Point of Sale
A VB.NET desktop application that manages pharmacy stock and selling at the counter, with reports rendered on the machine itself.
VB.NETWinFormsSQL ServerRDLC
Context
A pharmacy counter is not a cloud environment. One Windows machine, an unreliable connection, and an assistant who needs a printed receipt now rather than when the network comes back. Those constraints set the architecture before any technical preference does.
Scope I disclose publicly
- A VB.NET WinForms application combining stock management and point of sale in one interface.
- Data access through typed DataSets over SQL Server — the native pattern for this platform.
- RDLC reports rendered locally on the machine instead of through an external reporting service.
- A dedicated Arabic interface inside the application itself.
Decisions and trade-offs
- Rendering reports locally, because a pharmacy needs the receipt in the moment and cannot wait on a remote service.
- Using typed DataSets rather than introducing an extra ORM layer on a project of this size and platform.
- An Arabic interface at application level, not a thin translation laid over an English one.
- The trade-off: a desktop application means manual installation and updates on every machine, in exchange for working independently of the network.
The repository is public — the code, the project files, and the report definitions can be read directly.
Check the public sourceDisclosure: A desktop system delivered to a client and never published on the internet. I do not name the client and publish no usage figures.
