while (oIter.hasNext()) {
oTxPr = oIter.next();
if (oTxPr.id().equals(sTaxPayerId)) return;
}
oTxPr = null;
Dms oDms = oSes.getDms();
boolean bSubFolderFound = false;
for (Document c : getDocument().children())
if (bSubFolderFound = c.type().name().equals(sType+"s")) break;
if (!bSubFolderFound)
oDms.newDocument(oDms.getDocumentType(sType+"s"), getDocument()).save("");
for (Document c : getDocument().children()) {
if (c.type().name().equals(sType+"s")) {
oTxPr = new TaxPayer(oDms, sTaxPayerId);
BaseCompanyObject oObj;
if (sType.equals("AllowedTaxPayer"))
oObj = new AllowedTaxPayer();
else if (sType.equals("DeniedTaxPayer"))
oObj = new DeniedTaxPayer();
else
throw new IllegalArgumentException("Unrecognized type "+sType);
oObj.newDocument(oSes, oDms.getDocument(c.id()));
oObj.put("taxpayer", sTaxPayerId);
oObj.put("creation_date", new Date());
oObj.put("customer_acount", oTxPr.getString("customer_acount"));
oObj.put("business_name", oTxPr.getString("business_name"));
oObj.put("tax_id", oTxPr.getStringNull("tax_id",""));