Hi team
Can anyone help me, i have a handler that save record but its not saving well to a database .
AppServer code
	
	
	
		
				
			Can anyone help me, i have a handler that save record but its not saving well to a database .
AppServer code
		Code:
	
	PROCEDURE getEmail: 
  DEFINE INPUT  PARAMETER ipcAcc  AS CHARACTER NO-UNDO.
  DEFINE INPUT  PARAMETER ipcType AS CHARACTER NO-UNDO.
  DEFINE OUTPUT PARAMETER DATASET-HANDLE  ophdsEmail BY-VALUE.
  DEFINE OUTPUT PARAMETER opcError  AS CHARACTER NO-UNDO. 
 
   FOR EACH drsemail WHERE drsemail.dm-accno = ipcAcc
                       AND drsemail.dem-type = TRIM(ipcType) NO-LOCK:
                 
        CREATE tt-Emails.
            ASSIGN tt-Emails.tt-Ed = drsemail.dem-email
                    tt-Emails.tt-Status = "CREATED"
                    tt-Emails.tt-rowid = ROWID(drsemail).
        IF tt-Emails.tt-Status  = "AMENDED" THEN DO: 
         ASSIGN drsemail.dem-email = tt-Emails.tt-Ed.
         END.
                      
    END. 
    FIND FIRST drsemail WHERE ROWID(drsemail) = tt-Emails.tt-rowid
                EXCLUSIVE-LOCK.
     
    
    
    BUFFER  tt-Emails:FILL-MODE = "NO-FILL".        
    BUFFER  tt-Emails:ATTACH-DATA-SOURCE(DATA-SOURCE srcEmails:HANDLE).       
    DATASET dsEmails:FILL ().        
    BUFFER  tt-Emails:DETACH-DATA-SOURCE().  
  
   ophdsEmail = DATASET dsEmails:HANDLE.  
  
 END PROCEDURE.
Client side code for Save handler(event)
     METHOD OVERRIDE PROTECTED VOID btnSave_Click(INPUT sender AS System.Object, INPUT e AS System.EventArgs): 
         DEFINE VARIABLE cError AS LONGCHAR NO-UNDO.
        
         
         bs:CurrencyManager:EndCurrentEdit().
         bs:Assign().
         bsdebtor:CurrencyManager:EndCurrentEdit().
         bsdebtor:Assign().
         IF VALID-HANDLE (StatGeneral:hAppServer) THEN DO: 
             setWaitStates(FALSE).
             RUN general\EMaint.p ON StatGeneral:hAppServer PERSISTENT SET hProc.
             
             IF VALID-HANDLE (hProc) THEN DO: 
                 RUN getEmail IN hProc(INPUT txtAcc:Text, 
                                        INPUT cboType:Text,
                                        OUTPUT DATASET-HANDLE ophdsEmail,
                                        OUTPUT cError).
                                        
                    DELETE PROCEDURE hProc.
                 END.
                    setFields().
                    
                  bs:Handle = ophdsEmail.
               END.
             
         SUPER:btnSave_Click(INPUT sender, INPUT e).
         RETURN.
         END METHOD.
What am i missing please assist, thanks.