There may be a fault code stored in the BCM regarding this failure. A special scan tool like the DRB III would be required to access any BCM codes.
By disconnecting and reconnecting the battery, you may restore operation after a logic glitch. By doing so, it will erase any fault codes that could be used for diagnosis. Reset your clock and stations. If the problem is still evident after the battery reset, then the fault code may have returned.
You may want to look at the wiring between the door and the body. With age it can deteriorate and break when it flexes as the door opens and closes. Sometimes the driver's door switch is a "master" switch and if something happens to it it can affect operation of all doors like with the auto lock.