Скрипт
import com.haulmont.cuba.core.Persistence
import com.haulmont.cuba.core.Transaction
import com.haulmont.cuba.core.app.DataService
import com.haulmont.cuba.core.global.AppBeans
import com.haulmont.cuba.core.global.LoadContext
import com.haulmont.cuba.core.global.TimeSource
import com.haulmont.thesis.core.app.NumerationService
import com.haulmont.thesis.core.entity.Doc
import com.haulmont.thesis.core.entity.Numerator
import com.haulmont.thesis.core.enums.DocOfficeDocKind
Doc doc = card;
Persistence persistence=AppBeans.get(Persistence.class)
Transaction tx=persistence.getTransaction();
try {
Calendar calendar = Calendar.getInstance();
calendar.setTime(AppBeans.get(TimeSource.class).currentTimestamp());
NumerationService numerationWorker = AppBeans.get(NumerationService.class);
LoadContext ctx = new LoadContext(Numerator.class);
ctx.setQueryString("select e from df\$Numerator e where e.name = :name")
.setParameter("name", "Договоры");
Numerator numerator = AppBeans.get(DataService.class).load(ctx);
HashMap params = new HashMap()
params.put("doc", doc)
String num = numerationWorker.getNextNumber(numerator, params);
doc.setDocOfficeDocKind(DocOfficeDocKind.INTERNAL);
doc.setRegistered(true);
doc.setIncomeDate(AppBeans.get(TimeSource.class).currentTimestamp());
doc.setIncomeNo(num);
persistence.getEntityManager().merge(doc);
tx.commit();
}finally {
tx.end();
}