You need to sign in to do that
Don't have an account?
Jack Zarynsky
Page
The problem with fields mapping
Hello. I created Object Warehouse for storing goods with following fields:
Name "string",
Price "decimal",
Count "int",
Type "string",
Date "date",
Release "date",
Checkbox there is / is not available "bool"
After completing the form with the fields, the Field "Type" and Checkbox "Availability" stay EMPTY, but data is save.
What problem I have ?
Field type "a Type" - lyrics AREA
Field type "Availability" - bool
Here is my code:
Controller
public class WarehouseController { public String Name{get;set;} public String NameSearch{get;set;} public String NameDel{get;set;} public Decimal Price{get;set;} public Integer Count{get;set;} public String Type{get;set;} //public String Description{get;set;} public String DateAdd{get;set;} //Date public String Release{get;set;} // Date public Boolean Availability=false; List <DisplayMerchandise> products; List <DisplayMerchandise> productSearch; public List<DisplayMerchandise> getProducts() { if(products == null) { products = new List<DisplayMerchandise>(); for(Warehouse__c item : [ SELECT Id, Name, Description__c, Price__c, Type__c, Count__c, DateAdd__c, Release__c, Availability__c, Total_Inventory__c FROM Warehouse__c]) { products.add(new DisplayMerchandise(item)); //products.sort(); } } return products; } public List<DisplayMerchandise> getProductSearch() { return ProductSearch; } // Action method to handle purchasing process public void addProduct() { Warehouse__c[] m1 = new List<Warehouse__c>(); if(integer.valueof(Count)>0){ Availability=true; } String[] Date_str=DateAdd.split(' ');//inputDate String[] DateRelease_str=Release.split(' ');//inputRelease Warehouse__c m = new Warehouse__c( Availability__c=Availability, DateAdd__c=Date.newInstance(integer.valueof(Date_str[0]),integer.valueof(Date_str[1]),integer.valueof(Date_str[2])), Release__c=Date.newInstance(integer.valueof(DateRelease_str[0]),integer.valueof(DateRelease_str[1]),integer.valueof(DateRelease_str[2])),//date_del Count__c = integer.valueof(Count), Name=Name, Price__c = integer.valueof(Price), //decimal type Type__c = Type //string.valueof( ); m1.sort(); insert m; } // if(NameDel.equals(pr.Name)){delete pr;} public void deleteProduct(){ for(Warehouse__c pr : [SELECT Id, Name, Type__c, Count__c, Price__c, DateAdd__c, Release__c, Availability__c FROM Warehouse__c WHERE Name = :NameDel LIMIT 1000]){ if(NameDel.equals(pr.Name)){ delete pr; } } } public void searchProduct(){ productSearch=new List<DisplayMerchandise>(); for(Warehouse__c pr : [SELECT Id, Name, Type__c, Count__c, Price__c, DateAdd__c, Release__c, Availability__c FROM Warehouse__c]){ if(NameSearch.equals(pr.Name)){ productSearch.add(new DisplayMerchandise(pr)); } } } // Inner class to hold online store details for item public class DisplayMerchandise { private Warehouse__c merchandise; public DisplayMerchandise(Warehouse__c item) { this.merchandise = item; } // Properties for use in the Visualforce view public String name { get { return merchandise.Name; } } public String description { get { return merchandise.Description__c; } } public Decimal price { get { return merchandise.Price__c; } } public String type { get { return merchandise.Type__c; } } public Decimal count { get { return merchandise.Count__c; } } public String date_add{ get { return merchandise.DateAdd__c.format(); } } public Boolean availability{ get { return merchandise.Availability__c; } set { merchandise.Availability__c = value; } } public String release{ get { return merchandise.Release__c.format(); } } } }
Page
<apex:page controller="WarehouseController" tabStyle="Warehouse__c"> <apex:form > <apex:pageBlock title="Our Products"> <apex:pageBlockSection columns="1"> <apex:pageBlockTable value="{!products}" var="pitem"> <apex:column headerValue="Name"> <apex:outputText value="{!pitem.Name}"/> </apex:column> <apex:column headerValue="Price"> <apex:outputText value="{0,number,currency}"> <apex:param value="{!pitem.Price}"/> </apex:outputText> </apex:column> <apex:column headerValue="Count"> <apex:outputText value="{0,number}"> <apex:param value="{!pitem.Count}"/> </apex:outputText> </apex:column> <apex:column headerValue="Type"> <apex:param value="{!pitem.Type}"/> </apex:column> <apex:column headerValue="Date"> <apex:outputText value="{!pitem.date_add}"/> </apex:column> <apex:column headerValue="Release"> <apex:outputText value="{!pitem.Release}"/> </apex:column> <apex:column headerValue="Availability"> <apex:inputCheckbox id="box"/> </apex:column> </apex:pageBlockTable> </apex:pageBlockSection> </apex:pageBlock> <apex:pageBlock id="block1"> <apex:pageBlockSection columns="2" id="section1" > <apex:pageBlockSection id="section2" columns="1" collapsible="true" title="Add product"> <apex:pageBlockSection columns="1"> <apex:outputLabel value="Enter a description of the product:"/> <apex:inputText label="Name:" value="{!Name}"/> <apex:inputText label="Price:" value="{!Price}"/> <apex:inputText label="Count:" value="{!Count}"/> <apex:inputText label="Type:" value="{!Type}"/> <apex:inputText label="Date YYYY/M/D:" value="{!DateAdd}"/> <apex:inputText label="Release YYYY/M/D:" value="{!Release}"/> <apex:commandButton action="{!addProduct}" value="Add product"/> </apex:pageBlockSection> </apex:pageBlockSection> <apex:pageBlockSection title="Search" id="section4"> <apex:pageBlockSection columns="1"> <apex:outputText value="Enter a name for search:"/> <apex:inputText label="Name:" value="{!NameSearch}"/> <apex:commandButton action="{!searchProduct}" value="Search"/> <apex:outputText value="You need this Name / Type / DateAdd / Release:"/> <apex:outputText value="{!productSearch[0].Name} {!productSearch[0].Type} {!productSearch[0].date_add} {!productSearch[0].Release}"/> </apex:pageBlockSection> </apex:pageBlockSection> <apex:pageBlockSection title="Delete product" id="section3"> <apex:pageBlockSection columns="1"> <apex:outputText value="Enter a name of the product:"/> <apex:inputText label="Name:" value="{!NameDel}"/> <apex:commandButton action="{!deleteProduct}" value="Delete"/> </apex:pageBlockSection> </apex:pageBlockSection> </apex:pageBlockSection> </apex:pageBlock> <script> twistSection(document.getElementById('{!$Component.block1.section1.section3}').getElementsByTagName('img')[0]) </script> <script> twistSection(document.getElementById('{!$Component.block1.section4}').getElementsByTagName('img')[0]) </script> <html> <head> <META http-equiv="refresh" content="1"/> </head> </html> <apex:outputText value="The time right now: {0,date,yyyy/MM/dd G 'at' HH:mm:ss z}"> <apex:param value="{!NOW()}" /> </apex:outputText> </apex:form> </apex:page>
Triger
trigger WHTriger on Warehouse__c (before insert,before update) { for (Warehouse__c p : Trigger.new) { if (g.Count__c == 0) { count of goods == 0 p.Availability__c = false;//Checkbox 0 } else p.Availability__c = true;//Checkbox 1 } }
Thanks & Regards
Page:
change previous on current
Help with "Availability" !!!11
Thanks & Regards
All Answers
Page:
change previous on current
Help with "Availability" !!!11
Thanks & Regards