function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Ian Lin 439Ian Lin 439 

my action support function is not getting called ?can somebody help with the code

vf page:

<apex:page standardController="order" extensions="OrderExtension">
    <apex:form >
     <apex:pageMessages />
    <apex:pageBlock title="New Order">
    <apex:pageBlockSection title="Order Details" collapsible="false">
        <apex:inputField value="{!Order.AccountId}" html-placeholder="Customer Name"/>
         <apex:inputField value="{!Order.Email__c}" html-placeholder="Enter Text"/>
         <apex:inputField value="{!Order.Phone__c}" html-placeholder="Enter Text"/>
         <apex:inputField value="{!Order.EffectiveDate}" html-placeholder="Enter Text"/>
         <apex:inputField value="{!Order.Status}"/>
        <apex:inputField value="{!Order.ContractId}" html-placeholder="Contract Id"/>
        <apex:inputField value="{!Order.AEG__Rep_Code__c}"/>
        <!--apex:inputField value="{!Order.AEG__AR_Terms__c}"/-->
        <!--apex:inputField value="{!Order.AEG__Ship_Via__c}"/-->
        <apex:inputField value="{!Order.Pricebook2Id}" html-placeholder="PriceBook Type"/>
    </apex:pageBlockSection>
     <apex:pageBlockSection title="Address">
         <apex:inputField value="{!Order.ShippingAddress__c}" style="width:800px;height:20px" html-placeholder="Enter Text"/><br/>
         <apex:inputField value="{!Order.BillingAddress__c}" style="width:800px;height:20px" html-placeholder="Enter Text"/>
     </apex:pageBlockSection>
        <apex:pageBlockSection >
            <div align="right">
        <apex:commandButton value="Add New Order Item" action="{!add}"/>
               </div> 
        </apex:pageBlockSection>
        
      <apex:pageBlockSection title="Order Details" id="pb">
      <apex:pageBlockTable value="{!orderList}" var="o"> 
          <apex:column headerValue="Product Name" width="50%">
         <apex:outputField value="{!o.Product2Id}"/>
            </apex:column>  
          <apex:column headerValue="Product Family" width="50%">
           <apex:outputField value="{!o.product2.Family}"/>
           </apex:column>  
          <apex:column headerValue="Ordered Quantity" width="50%" >
           <apex:inputField value="{!o.Quantity}"/>
           </apex:column> 
          <!--apex:column headerValue="Available Quantity" width="50%">
           <apex:outputField value="{!o.AvailableQuantity__c}"/>
           </apex:column--> 
          <apex:column headerValue="List Price" width="50%">
           <apex:outputField value="{!o.ListPrice}"/>
           </apex:column>
          <apex:column headerValue="Unit Price" width="50%">
           <apex:outputField value="{!o.UnitPrice}"/>
           </apex:column>
          <apex:column >                      
              <apex:facet name="header">Action</apex:facet>
                <apex:commandLink action="{!deleteRecord}" value="Delete" onclick="if(!confirm('Are you sure?')) return false;">
                 <apex:param name="rowId" assignTo="{!bkId}" value="{!o.Id}"/>                 
               </apex:commandLink>
               </apex:column>        
      </apex:pageBlockTable>
        </apex:pageBlockSection>
        
           
           <apex:pageBlock id="orderAdd" >                 
        <apex:pageblockSection>
            <!--apex:actionRegion -->  
            <apex:pageBlockTable value="{!OrderLi}" var="orders">
                
                <!--apex:column headerValue="Product Name">
                    <apex:inputField value="{!orders.Product2Id}">
                    </apex:inputField>
                </apex:column-->
               
                <apex:column headerValue="Product Name">
                    
                    <apex:inputField value="{!orders.Product2Id}" >
                        <apex:actionSupport event="onchange" action="{!autopop}" reRender="orderAdd">
                        <apex:param name="selectedR"  value="{!orders.Product2Id}"  assignTo="{!ordId}"/>
                        </apex:actionSupport>
                         </apex:inputField>
                        </apex:column>
                
                <apex:column headerValue="Product Family" id="p1">
                    <apex:inputField value="{!orders.product2.Family}">
                        <!--apex:actionSupport event="onchange" action="{!autopop}" reRender="pbt">
                        <apex:param name="selectedR"  value="{!orders.product2.Family}" assignTo="{!ordId}"/>
                        </apex:actionSupport-->
                         </apex:inputField>
                </apex:column>
                <!--apex:outputField value="{!orders.product2.Family}"/-->
                <apex:column headerValue="order Quantity" id="p2">
                <apex:inputField value="{!orders.Quantity}">
                    <!--apex:actionSupport event="onchange" action="{!autopop}" reRender="orderAdd">
                        <apex:param name="selectedR"  value="{!orders.Quantity}" assignTo="{!ordId}"/>
                        </apex:actionSupport-->
                    </apex:inputField>
                </apex:column>
                             
                <!--apex:column headerValue="Available Quantity" width="50%">
           <apex:outputField value="{!orders.AvailableQuantity__c}"/>
           </apex:column-->
                <apex:column headerValue="order ListPrice">
                    <apex:inputField value="{!orders.ListPrice}">
                    <!--apex:actionSupport event="onchange" action="{!autopop}">
                        <apex:param name="selectedR"  value="{!orders.ListPrice}" assignTo="{!ordId}"/>
                        </apex:actionSupport-->
                    </apex:inputField>
                </apex:column>
                <apex:column headerValue="orders UnitPrice">
                    <apex:inputField value="{!orders.UnitPrice}"/>
                </apex:column>
                      
                <!--apex:column headerValue="orders Pricebook">
                    <apex:inputField value="{!Order.Pricebook2Id}"/>
                </apex:column-->
               
            </apex:pageBlockTable>   
                   
                <!--/apex:actionRegion-->
        </apex:pageblockSection>  
            
    </apex:pageBlock>
               
        <apex:pageBlockSection >
             <apex:panelGrid columns="4">
              <apex:commandButton action="{!First}" value="First"/>
              <apex:commandButton action="{!Previous}" value="Previous"/>
              <apex:commandButton action="{!Next}" value="Next"/>
              <apex:commandButton action="{!Last}" value="Last"/>   
              </apex:panelGrid> 
          </apex:pageBlockSection>
        <apex:pageBlockSection >
          <div align="centre">  
         <apex:panelGrid columns="2" >   
        <apex:commandButton action="{!save}" value="Save"/>
        <apex:commandButton action="{!cancel}" value="Cancel"/>
             </apex:panelGrid>
             </div> 
        </apex:pageBlockSection>
    </apex:pageBlock>
    </apex:form>
        
</apex:page>

extension:

public  with Sharing class OrderExtension {
        
    private order orders { get; set;}
    public String bkId {get; set;}
    public String  ordId {get; set;}
   //private orderItem addNew {get;set;}
    public integer startingFrom{get;set;}
    public List<OrderItem> orderList;
    public List<OrderItem> orderLi{get;set;}
    public List<PriceBookEntry> orderL;
   //public List<OrderItem> orderL{get;set;}
    private final integer MAX_RECORDS=5;
    private integer orderRecordCount;
    private integer lastRecords;
    private ID recordId;
    public OrderItem op{get;set;}
    List<Order> li=new List<Order>();
    //public List<orderItem> l{get;set;}
    private ApexPages.StandardController sc;   
    public OrderExtension(ApexPages.StandardController sc){
          //this.op = (OrderItem)sc.getRecord();
         this.sc=sc;
         recordId=ApexPages.currentPage().getParameters().get('id');
        if(startingFrom==null)
        {
            startingFrom=0;
         }
        
        if(recordId==null)
        {
            orders=new order();
        }
        else{
            
            orders=[select AccountId,status from order where id= : recordId];
        }
        
        orderRecordCount=[select count() from orderItem where orderid= :recordId];
        lastRecords=math.mod(orderRecordCount, 5);
        //system.debug(orderRecordCount);
       orderLi=new List<orderItem>();
        //orderL.add(o);
        //op=new OrderItem();
    }
    
    public PageReference autopop(){
        
        system.debug('rohit');

       // order cont=(order) sc.getRecord();
        //system.debug(cont);
       //cont.order=[select product2.family from orderitem where id=:cont.Product2Id];
        //ordId = apexpages.currentPage().getParameters().get('selectedR');
        system.debug(ordId);
        system.debug(ApexPages.currentPage().getParameters().get('selectedR'));
        system.debug(ApexPages.currentPage().getParameters());
         //OrderItem ord = [select product2.family from orderItem where id =: ordId limit 1];
         //system.debug(ordId);
                
        return null;
    }
    
    public PageReference deleteRecord(){
        OrderItem remBank = [select id from orderItem where id =: bkId limit 1];        
        if(remBank != null)
        {
            try{
                delete remBank;
            }
            catch(DmlException ex){
                ApexPages.addMessages(ex);
            }
        }
       return null;
   }  
    
 
     public List<orderItem> getorderList(){
        orderList=[select Product2Id,Quantity,product2.name,Product2.family,ListPrice,UnitPrice from orderItem where orderid= :recordId
                   limit: MAX_RECORDS 
                   offset: startingFrom];
        return orderList;
    }
    
    /*public List<priceBookEntry> getPriceBookList(){
        orderList=[select id from priceBookEntry];
        return orderList;
    }*/
    
    public PageReference save() {
        try {
             Order o=(order)sc.getRecord();
      upsert o;
           //Id Id1=orderLi.get(0);
           //Id Id2= orderLi.get(Pricebook2Id);
            system.debug(ordId);
            system.debug('rishi');
   List<OrderItem> orderLis=new List<OrderItem>();
      for(OrderItem p:orderLi)
      {
          Id Id1=(Id)p.get('Product2id');
          Id Id2=o.pricebook2id;
          Pricebookentry b=[select Product2id from pricebookentry where Product2id=:Id1 and pricebook2id= :ID2];
          p.PricebookEntryId=b.id;
          p.OrderId=o.Id;
          orderLis.add(p);
      }
       upsert orderLis; 
 
    System.debug('Statement after insert.');
} catch(DmlException e) {
    apexpages.addmessages(e);
}
        //PageReference pg=new 
        return ApexPages.currentPage();
        }
    
    public void add(){
       
        OrderItem m=new OrderItem();
        //Id i=m.Product2Id;
        //system.debug(i);
        //PriceBookEntry c=[SELECT Name, Product2.Family, Product2.Name, Product2Id,UnitPrice FROM PricebookEntry WHERE  Product2Id= :i];
        //m.PricebookEntryId=c.Id;
        orderLi.add(m);
        orderList.add(m);
    }
       
    public pageReference first(){
        startingFrom=0;
        return ApexPages.currentPage();
    }
    
    public pageReference previous(){
        
        if(startingFrom<=0)
        {
            startingFrom=0;
        }
        
        else if(startingFrom >= orderRecordCount)
        {
            startingFrom=startingFrom- MAX_RECORDS;
        }
        
        else if(startingFrom < orderRecordCount)
        {
            startingFrom=startingFrom-MAX_RECORDS;
        }
        return ApexPages.currentPage();
    }
    
    public pageReference next(){
        if((orderRecordCount-startingFrom)>MAX_RECORDS)
        {
            startingFrom=startingFrom+MAX_RECORDS;
        }
        return ApexPages.currentPage();
    }
    
    public pageReference last(){
        startingFrom=orderRecordCount-lastRecords;
        return ApexPages.currentPage();
    }
    
    

}