관직이 품계보다 낮은 경우를 ‘行’, 관직이 품계보다 높은 경우를 ‘守’라 하였다. 직함을 쓸 때 ‘行’ 또는 ‘守’를 품계 뒤 관사명 앞에 쓰게 되어 있었다.
즉, 먼저 품계를 쓰고 다음에 ‘행’ 또는 ‘수’를 쓰고, 다음에 관사와 직사를 쓰게 되어 있었다.
품계와 관직을 일치시키는 것을 대품(對品)이라 했는데, 품계는 관직 세계의 위계(位階)로서 모든 관리들에게 광범하게 주어졌다. 이와 달리, 관직은 일정한 수로 제한되어 있고 관리들의 능력에도 차이가 있기 때문에, 관직 제수에서 빠짐없이 대품을 시킨다는 것은 실제로 어려운 일이었다.
품계는 존비(尊卑)를 정하고 공로를 나누는 기준으로 삼고, 관직은 재능에 따라 제수되었다. 때문에 관직의 경우에는 혹 ‘종한입극(從閑入劇 : 한가한 관직에서 바쁜 관직으로 옮김.)’, ‘거고취비(去高就卑 : 높은 관직을 버리고 낮은 관직으로 감.)’되는 수도 있었다.
따라서 이러한 품관과 관직의 불일치를 보완하고자 하는 것이 행수법 실시의 중요한 이유 중의 하나였다. 행수법은 고려 초기부터 이미 중국 관제를 본떠 널리 사용하였다. 즉, 수태보(守太保)·수태사(守太師)·수사공(守司空) 등이 그것이다.
조선시대에서는 1442년(세종 24)에 고제(古制)를 따라 행수법을 행하였다. 그런데 건국 과정에서 양산된 고질훈로(高秩勳老)들이 세종조에 이르면 대부분 죽고 순자법(循資法)의 실시로 새로운 고질자가 쉽게 나타날 수 없기 때문에 수법이 중심이 되었다. 따라서, 수직(守職)을 제수할 때 몇 등급씩 격등수직하는 경우가 많이 있었다.
이에 1449년 6월부터는 행수직의 제수 범위를 1계에 국한하도록 하였다. 이것은 송제(宋制)에 관직이 품관보다 1품 이상 낮은 것은 ‘행’, 1품 높은 것은 ‘수’, 2품 이상 높은 것은 ‘시(試)’, 품관과 관직이 동품인 것은 ‘부(否)’라고 한 것 중에 ‘행’과 ‘수’만을 채택한 것이었다.
그러나 세조의 집권 과정에서 고질자가 많이 나타나 이 제한 규정도 곧 무너지게 되었다. 그리하여 성종조에는 당상관이 8, 9품 군직(軍職)을 행직(行職)으로 받는 경우가 많게 되었다. 이에 ≪경국대전≫에는 7품 이하는 2계, 6품 이상은 3계 이상을 수직으로 올려받을 수 없도록 규정하였다.