public void CreateItemAndSetup()
{
InventTable
inventTable;
InventTableModule
inventTableModule;
InventItemSetupSupplyType inventItemSetupSupplyType;
InventModelGroupItem
inventModelGroupItem;
InventItemGroupItem
inventItemGroupItem;
NumberSequenceTable
numberSequenceTable;
EcoResProduct
ecoResProduct;
EcoResDistinctProduct
ecoResDistinctProduct;
EcoResProductIdentifier
ecoResProductIdentifier;
EcoResStorageDimensionGroupProduct
ecoResStorageDimensionGroupProduct;
EcoResTrackingDimensionGroupProduct
ecoResTrackingDimensionGroupProduct;
EcoResStorageDimensionGroupItem
ecoResStorageDimensionGroupItem;
EcoResTrackingDimensionGroupItem
ecoResTrackingDimensionGroupItem;
DataAreaId
_dataAreaId=curext();
ItemId
_itemid;
ItemName _itemname;
if (EcoResProduct::findByProductNumber(_itemid).RecId == 0)
{
//Product
ecoResDistinctProduct.clear();
ecoResDistinctProduct.initValue();
ecoResDistinctProduct.ProductType =
EcoResProductType::Item;
ecoResDistinctProduct.DisplayProductNumber = _itemid;
ecoResDistinctProduct.SearchName = _itemname;
if (ecoResDistinctProduct.validateWrite())
{
ecoResDistinctProduct.insert();
ecoResProductIdentifier.clear();
ecoResProductIdentifier.initValue();
ecoResProductIdentifier.ProductNumber
= _itemid;
ecoResProductIdentifier.Product
= ecoResDistinctProduct.RecId;
ecoResProductIdentifier.insert();
//Released Product
select firstOnly ecoResProduct
where EcoResProduct.DisplayProductNumber
== _itemid;
//Storage dimension group
ecoResStorageDimensionGroupProduct.clear();
ecoResStorageDimensionGroupProduct.initValue();
ecoResStorageDimensionGroupProduct.Product = ecoResProduct.RecId;
ecoResStorageDimensionGroupProduct.StorageDimensionGroup = EcoResStorageDimensionGroup::findByDimensionGroupName("SiteWH").RecId;
if (ecoResStorageDimensionGroupProduct.validateWrite())
{
ecoResStorageDimensionGroupProduct.insert();
}
//Tracking dimension group
ecoResTrackingDimensionGroupProduct.clear();
ecoResTrackingDimensionGroupProduct.initValue();
ecoResTrackingDimensionGroupProduct.Product = ecoResProduct.RecId;
ecoResTrackingDimensionGroupProduct.TrackingDimensionGroup
= EcoResTrackingDimensionGroup::findByDimensionGroupName("None").RecId;
if (ecoResTrackingDimensionGroupProduct.validateWrite())
{
ecoResTrackingDimensionGroupProduct.insert();
}
if (_itemname)
{
EcoResProductTranslation::createOrUpdateTranslation(ecoResDistinctProduct.RecId,
_itemname, _itemname);
}
inventTable.clear();
inventTable.initValue();
inventTable.initFromEcoResProduct(ecoResProduct);
inventTable.ItemId = ecoResProduct.productNumber();
inventTable.NameAlias = ecoResProduct.SearchName;
inventTable.insert(true);
// Create inventTableModules
inventTableModule.clear();
inventTableModule.initValue();
inventTableModule.ItemId = inventTable.ItemId;
inventTableModule.ModuleType = ModuleInventPurchSales::Invent;
inventTableModule.Price = 10;
inventTableModule.insert();
inventTableModule.clear();
inventTableModule.initValue();
inventTableModule.ItemId = inventTable.ItemId;
inventTableModule.ModuleType = ModuleInventPurchSales::Purch;
inventTableModule.insert();
inventTableModule.clear();
inventTableModule.initValue();
inventTableModule.ItemId = inventTable.ItemId;
inventTableModule.ModuleType = ModuleInventPurchSales::Sales;
inventTableModule.insert();
//Inventory model group
inventModelGroupItem.clear();
inventModelGroupItem.initValue();
inventModelGroupItem.ItemDataAreaId = inventTable.dataAreaId;
inventModelGroupItem.ItemId
= inventTable.ItemId;
inventModelGroupItem.ModelGroupId
= "FIFO";
inventModelGroupItem.ModelGroupDataAreaId = curext();
inventModelGroupItem.insert();
//Item group
inventItemGroupItem.clear();
inventItemGroupItem.initValue();
inventItemGroupItem.ItemDataAreaId = inventTable.dataAreaId;
inventItemGroupItem.ItemId = inventTable.ItemId;
inventItemGroupItem.ItemGroupId
= "Sevices";
inventItemGroupItem.ItemGroupDataAreaId
= curext();
inventItemGroupItem.insert();
//Create inventItemLocation
InventItemLocation::createDefault(inventTable.ItemId);
// Creates a new item default order type for the product that is
released.
inventItemSetupSupplyType.clear();
inventItemSetupSupplyType.initValue();
inventItemSetupSupplyType.ItemId = inventTable.ItemId;
inventItemSetupSupplyType.ItemDataAreaId = inventTable.DataAreaId;
inventItemSetupSupplyType.insert();
//create relationship tables to dimension groups.
ecoResStorageDimensionGroupProduct
= EcoResStorageDimensionGroupProduct::findByProduct(ecoResProduct.RecId);
ecoResTrackingDimensionGroupProduct = EcoResTrackingDimensionGroupProduct::findByProduct(ecoResProduct.RecId);
// mandatory storage dimension group for the product
if (ecoResStorageDimensionGroupProduct.RecId)
{
ecoResStorageDimensionGroupItem.clear();
ecoResStorageDimensionGroupItem.ItemDataAreaId = inventTable.DataAreaId;
ecoResStorageDimensionGroupItem.ItemId = inventTable.ItemId;
ecoResStorageDimensionGroupItem.StorageDimensionGroup =
ecoResStorageDimensionGroupProduct.StorageDimensionGroup;
ecoResStorageDimensionGroupItem.insert();
}
// mandatory tracking dimension group for the product
if (ecoResTrackingDimensionGroupProduct.RecId)
{
ecoResTrackingDimensionGroupItem.clear();
ecoResTrackingDimensionGroupItem.ItemDataAreaId
= inventTable.DataAreaId;
ecoResTrackingDimensionGroupItem.ItemId = inventTable.ItemId;
ecoResTrackingDimensionGroupItem.TrackingDimensionGroup =
ecoResTrackingDimensionGroupProduct.TrackingDimensionGroup;
ecoResTrackingDimensionGroupItem.insert();
}
info(strfmt("Product successfully released to UsMf legal entity"));
}
}
}
/// <summary>
/// To create or update service orderable
attribute YES or NO
///
</summary>
public void createOrUpdateProductAttribute()
{
EcoResProduct
product;
EcoResDistinctProductVariant variant;
EcoResProductInstanceValue
ecoResProductInstanceValue;
EcoResAttributeType ecoResAttributeType;
EcoResAttribute
ecoResAttribute;
EcoResAttributeValue
ecoResAttributeValue;
EcoResBooleanValue
ecoResBooleanValue;
ItemId
itemId;
EcoResCategoryName
categoryName;
RefRecId
itemRecID;
str
attributeName;
Boolean
attributeValue;
itemId = this.ItemNumber;
attributeName = "@BC:ServiceOrderableLbl";
attributeValue = this.BCServiceOrderable;
categoryName = this.BCEcoResCategoryName;
product = EcoResProduct::findByProductNumber(itemId);
//Get Product
by Itemid
if(product)
{
ttsbegin;
if(product.getInstanceRelationType() == tableStr(EcoResDistinctProductVariant))
{
variant = product as EcoResDistinctProductVariant;
product = EcoResProduct::find(variant.ProductMaster);
}
//Find
records in ecoResProductInstanceValue if not insert new
ecoResProductInstanceValue = EcoResProductInstanceValue::findByProduct(product.recid);
if(!ecoResProductInstanceValue)
{
//insert records in ecoResProductInstanceValue
ecoResProductInstanceValue.product = product.Recid;
ecoResProductInstanceValue.insert();
}
//Check
if record exists in EcoResAttributeValue
ecoResAttributeType = EcoResAttributeType::findByName("Boolean");
ecoResAttribute = EcoResAttribute::findByName(attributeName, ecoResAttributeType.RecId);
ecoResAttributeValue = EcoResAttributeValue::findByInstanceAttribute(ecoResProductInstanceValue.recid, ecoResAttribute.recid,
true);
if(ecoResAttributeValue)
{
//If EcoResBooleanValue exists, check it doesn't have the same
value
if(EcoResBooleanValue::find(ecoResAttributeValue.Value).BooleanValue != attributeValue)
{
//create a record in EcoresBooleanvalue
ecoResBooleanValue.clear();
ecoResBooleanValue.BooleanValue = attributeValue;
ecoResBooleanValue.insert();
//Update ecoResAttribute
ecoResAttributeValue.Value
= ecoResBooleanValue.recid;
ecoResAttributeValue.update();
}
}
//if
ecoresAttributeValue not exists
else
{
//Always is necessary to insert a new EcoResValue record per
attribute (1:1)
ecoResBooleanValue.clear();
ecoResBooleanValue.BooleanValue
= attributeValue;
ecoResBooleanValue.insert();
//insert record in ecoResAttributeValue
ecoResAttributeValue.clear();
ecoResAttributeValue.InstanceValue = ecoResProductInstanceValue.recid;
ecoResAttributeValue.Attribute
= ecoResAttribute.recid;
ecoResAttributeValue.Value
= ecoResBooleanValue.Recid;
ecoResAttributeValue.insert();
}
ttsCommit;
}
}
///
<summary>
/// To create product categories
///
</summary>
public void createProductCategory()
{
EcoResCategoryHierarchy
ecoResCategoryHierarchy;
EcoResCategory
ecoResCategory;
EcoResProductCategory
selectedEcoResProductCategory;
EcoResProduct
ecoResProduct;
EcoResTextValue textValue;
ecoResCategoryHierarchy = EcoResCategoryHierarchy::findByName(this.BCEcoResCategoryHierarchyName);
ecoResCategory = EcoResCategory::findByName(this.BCEcoResCategoryName, ecoResCategoryHierarchy.Recid);
if (ecoResCategory.RecId)
{
ecoResProduct = InventTable::find(this.ItemNumber).Product();
select firstonly
selectedEcoResProductCategory
where selectedEcoResProductCategory.CategoryHierarchy ==
ecoResCategory.CategoryHierarchy
&& selectedEcoResProductCategory.Product == ecoResProduct.RecId;
if (selectedEcoResProductCategory.RecId)
{
selectedEcoResProductCategory.selectForUpdate(true);
ttsbegin;
selectedEcoResProductCategory.Category = ecoResCategory.RecId;
selectedEcoResProductCategory.update();
ttscommit;
}
else
{
EcoResProductCategory::insertEcoResProductCategory(ecoResCategory, ecoResProduct);
}
}
}
If you look at the current scenario with regards to the grants for small business expansion, the federal government actually offers no direct grants. There are however, some programs by the government, through which grants for research and development activities that a small business might carry out are provided by the SBA. Then there are indirect grants in the form of small business loan guarantees as well as subsidized loans, wherein you get loans at reduced rate of interest from the bank as the government pays some part of your loan. Or if you default on your loan payment, the government pays the bank on your behalf. As you can see, there are opportunities galore for small business funding and grants through Mr Pedro and his funding company. They offer a loan at 2% rate which is very affordable. As a start-up business owner you just have to make an effort to find the one that is most suitable for your business goals.
ReplyDeleteContact Mr Pedro on pedroloanss@gmail.com for loans.
All the best!