Итак, мне недавно пришлось создать отчет, который имитирует канадскую таможенную форму. Проблема заключается в том, что отчет печатается на бумаге размером 11 x 14 дюймов, но в нем используется метрическая схема. Поскольку моя установка FoxPro выполняется на машине с американско-английскими единицами измерения, FoxPro пытается выполнить задачу, используя английскую линейку и выполняя привязку к сетке при измерениях на основе дюймов. Это создает некоторые незначительные проблемы дизайна, очевидно.
Я понимаю, что отчеты на самом деле являются просто замаскированными таблицами, и я выяснил, как включить метрическую линейку (вместо английской), изменив запись, и это работает как задумано. Тем не менее, функциональность привязки к сетке, кажется, хочет привязаться к 48 единицам на дюйм вместо чего-то метрического. Таким образом, перемещение прямоугольника с помощью мыши приводит к смещению (снова) поля в английских измерениях.
Чтобы обойти это, я решил открыть отчет в виде таблицы, вручную преобразовал все метрические единицы с помощью электронной таблицы и вручную ввел смещения и размеры. Хотя это работает хорошо и кажется очень точным, оно все же подвержено ошибкам.
Итак, вопрос в том, как заставить FoxPro 8 привязываться к сетке в метрических единицах измерения в отчете, чтобы мне не приходилось повторять ввод чисел вручную? Это было бы неплохо заставить FoxPro приспособить Metric таким образом, чтобы я мог выравнивать объекты в отчете с помощью мыши, а не вставлять их в виде чисел и «переворачивать» отчет в режиме конструктора, чтобы проверить его.
Для справки, на данный момент есть следующие переводы:
25.4 mm = 1 inch = 10,000 report units = 48 grid snap points
Очевидно, я хотел бы что-то ближе к этому:
25.4 mm = 1 inch = 10,000 report units = 25.4 grid snap points
Примечание. Да, я рассмотрел вопрос о настройке Virutal Machine с FoxPro, которая использует установку Metric, то есть установку Windows XP для Канады. Тем не менее, это займет еще один день или около того, чтобы завершить установку вместе с остальной средой разработки, поэтому я пытаюсь избежать этого.