I used to use some BCD ceramic networks that were made specially for the use. Came in a square ceramic block with 20 odd leads on the sides to give a voltage from 0 to Vref ( which was a 5 VAC 400Hz sine wave from the main AC reference generator) that was used to convert the input from a 5 digit BCD switch which had as the MSD a polarity switch. It was pretty stable, the LSD never drifted more than a count over the full operating range ( or from a bath in freezer followed by a cooking from a hot air gun) during testing. There was one trimming resistor for the unit, used to adjust the offset to zero. Typically I used a 1M resistor there to ground, as you needed a resistor in the schematic, but had a choice of connecting the chosen value to ref or GND.