MVC Service Gateway question

Let's say that I have a service in which I want to check a transaction
table for a pre-existing record using a field other than the key id
column. I'm wondering about placing tid bit functions for a
requirement like this in the gateway or what? For example, would this
be a good practice:

public void function processTransaction(){
var transactionid =
if(transactionid eq 0){
//transaction already exists

public any function checkTransactionByTXNID(numeric txn_id){
var transactionid = 0; query(sql="select transactionid from transactions where txn_id
= #txn_id#");
result = sql.execute().getResult();
if(result.recordCount gt 0){transactionid = result.transactionid;}
return transactionid;

Not concerned with code correctness, just typed it in for general
idea. Wondering if checking for a duplicate transaction record from
the gateway is correct or should I use the bean (active record)? Or
DAO, etc..? Ideas?? Maybe it's just a matter of preference, seems OO
is more art than standards sometimes with various styles.

I personally check for duplicates are part of a validation process,
which I keep as part of the bean. I like self-validating objects.

Lots of ways to skin a cat.

Curt Gratz
Computer Know How