public static void Main()
ExtractValues(1234.567m);
ExtractValues(1234.56789m);
private static void ExtractValues(decimal barcodeField)
decimal barcodeDecimals = barcodeField % 1m;
int barcode = (int)barcodeField;
int environment, pageNumber = 0;
if (barcodeDecimals * 1000 % 1m == 0)
Console.WriteLine("environment only");
environment = (int)(barcodeDecimals * 1000);
Console.WriteLine("environment and page number");
pageNumber = (int)((barcodeDecimals % 1m) * 100);
environment = (int)((barcodeDecimals * 100 % 1m) * 1000);
Console.WriteLine($"Barcode: {barcode}");
Console.WriteLine($"Pagenumber: {pageNumber}");
Console.WriteLine($"Environment: {environment}");