Правила для SetRange

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Автор: Josh

Я, похоже, обнаружил неплохое решение ранжирования данных — вам необходимо только установить различные начальный и конечный диапазоны последнего поля, определенного вашим индексом, после чего введенное в любое поле индекса значение будет проигнорировано. Также вы не сможете покинуть ранжируемое поле, если редактируемая запись пуста.

Попытаюсь изложить все попроще… Скажем, у меня есть индекс Field1; Field2; Field3, затем;

SetRangeStart;

Table1Field1.Value := x1;

Table1Field2.Value := y1;

Table1Field3.Value := z1;

SetRangeEnd;

Table1Field1.Value := x2;

Table1Field2.Value := y2;

Table1Field3.Value := z2;

ApplyRange;

Правила…

x1 должен равняться x2, если y или z определен

y1 должен равняться y2, если z определен

x должен быть определен, если y или z определены

y должен быть определен, если x определен

если x1 = x2 и никаких других критериев не определено, тогда y1 и y2 должны быть соответственно min/max значениями y

если x1 = x2 и y1 = y2 и никаких других критериев не определено, тогда z1 и z2 должны быть соответственно min/max значениями z

Я не знаю, поняли вы это или нет, но надеюсь это поможет…

{/codecitation}

Добавить комментарий