rule "bufdbmeth" requires that DEFINE BUFFER statements exist for every database buffer that appears in the code for a method (in a class).
Example:
METHOD PUBLIC VOID SomethingStupid : IF customer.cust-name = "jurjen" THEN customer.cust-name = "john". END METHOD.
should have its own local buffer, like for example
METHOD PUBLIC VOID SomethingStupid : DEFINE BUFFER customer FOR customer. IF customer.cust-name = "jurjen" THEN customer.cust-name = "john". END METHOD.
That way, you prevent side-effects from changing a buffer that may also be used by other methods. You also prevent locking issues, which are likely to happen because class files stay in memory for some time (much like persistent procedures).
Note:
The rule does not only look at methods, but also at constructors, destructor, property_getters and property_setters.