मुझे एक बटन क्लिक विधि द्वारा सूची एप्लेट में सभी रिकॉर्ड्स को हटाना होगा। इसे प्राप्त करने के लिए, मैंने "DeleteAllRecords" विधि के साथ सूची एप्लेट में एक बटन जोड़ा है और नीचे के रूप में BC PreInvokeMethod फ़ंक्शन में एक स्क्रिप्ट जोड़ा है। एक बार बटन पर क्लिक करने के बाद सभी रिकॉर्ड हटा दिए जाएंगे, लेकिन एप्लेट रीफ्रेश नहीं होगा। मैं उसे कैसे प्राप्त कर सकता हूं?

try
    {
    if(MethodName == "DeleteAllRecords")
    {
                var EmpBO = TheApplication().GetBusObject("XXXX");
                var EmpBC = EmpBO.GetBusComp("XXXX");
                
                with(EmpBC)
                {
                    SetViewMode(AllView);
                    ActivateField("EmployeeID");
                    ClearToQuery();
                    SetSearchExpr("[XXXX] <> ' '");
                    ExecuteQuery(ForwardOnly);
        
                    var Frecord = FirstRecord();
    
                    while(Frecord)
                    {   
                        Frecord = DeleteRecord();
                        Frecord = FirstRecord();
                    }
                }
                //BC.InvokeMethod("RefreshBuscomp");
                return (CancelOperation);

    }
    }       
    catch(e)
    {
        throw(e);
    }
    finally
    {
        EmpBO = null;
        EmpBC = null;
    }

    return (ContinueOperation);
0
sj111 18 जिंदा 2021, 10:38

1 उत्तर

सबसे बढ़िया उत्तर

आप कुछ चीजों को आजमा सकते हैं। 1: सभी विलोपन के बाद अंत में एक साधारण अशक्त क्वेरी। ClearToQuery () और ExecuteQuery (); 2: RefreshBusComp (चेक दस्तावेज़ीकरण) के लिए एक BC विधि है जिसका उपयोग InvokeMethod() के साथ किया जा सकता है। लगभग 1 जैसा ही काम करता है। मैं देख रहा हूँ कि आपने इसे पहले ही आज़मा लिया है और शायद काम नहीं किया।

3: ऐसी व्यावसायिक सेवाएं हैं जो एप्लेट्स को रीफ्रेश कर सकती हैं, जैसे फिन्स टेलर यूआई नेविगेशन।

4: आप ब्राउज़रस्क्रिप्ट/जावास्क्रिप्ट में एक शून्य क्वेरी का भी प्रयास कर सकते हैं, इसे InvokeMethod में डाल दें, ताकि यह बीसी एस्क्रिप्ट के बाद चले। जेनब को बीस्क्रिप्ट उत्पन्न करने के लिए चलाया जाना है।

इनमें से एक काम करना चाहिए।

0
Ranjith R 19 जिंदा 2021, 02:18
बहुत - बहुत धन्यवाद!!! पहली विधि की कोशिश की और यह ठीक काम किया !!!
 – 
sj111
19 जिंदा 2021, 06:47
क्या आप रिकॉर्ड्स को हटाने से पहले अलर्ट संदेश जोड़ने का एक उचित तरीका जानते हैं? RaiseErrorText काम करना चाहता है क्योंकि यह बाकी स्क्रिप्ट को निष्पादित करना बंद कर देता है।
 – 
sj111
19 जिंदा 2021, 07:57
ब्राउज़र स्क्रिप्ट अलर्ट संदेशों की अनुशंसा करें, जो ठीक और रद्द करें बटन प्रदान करता है। स्क्रिप्ट को एप्लेट प्रीइनवोक ब्राउज़रस्क्रिप्ट में जोड़ा जा सकता है।
 – 
Ranjith R
20 जिंदा 2021, 01:18