The origin us usually the part datum. I always used G54 - G59 on the Yasnac once the option became available. The Work Coordinate System values are the distance and direction from Machine Zero to Part Zero, i.e. #6516 = -12.1234, #6517 = -7.3343. Some folks used G10 at the start of the program, some entered the values manually.
The Length Offsets can be done in a couple of ways. You can set each tool to the top of the part, or, you can set each tool to a known reference height (like a 123 block) and adjust up or down with the Z of the Work Coordinate system. In either case, the value stored in the H offset is the distance and direction the tool must move from Machine Zero (Z) to the setting point, i.e. H01 = -12.1323.
The Z of the Work Coordinate can be either + or - depending on the direction from the setting point to the top of the part.
Hope this helps.