RMS capacity on midlet

Whats the RMS capacity of a midlet in terms of kilo bytes ?

The source I'm getting this info from (Core J2ME) is not exactly clear on that:
At least 8 kilobytes of non-volatile memory for applications to store persistent data...It looks more like 8 Kb total.
shmoove

Similar Messages

  • Accessing RMS of a different Midlet Suite

    Hi,
    I read the following in a document released from Nokia on MIDP 2.0.
    "MIDlets are allowed to create multiple record stores, as long as they have different names, and MIDlets
    can access record stores relating to other MIDlets within the same suite. Also, if explicit permission is
    given, MIDlets within other suites can also access the record store (a new feature in MIDP 2.0)."
    I would like to access an RMS in another MIDlet suite from my midlet. Does anybody know how I would do this or where I could find more information on this?? Also what does it mean when it says "explicit permission".
    My motivation behind this question is that I would like to maintain the data on my application even if a new version of the application is released. I take it that is I release a new version of my application that I would have to install a new midlet suite and that this would overwrite the existing RMS in the MIDlet suite. Therefore by having my RMS in a seperate MIDlet suite I can maintain my data. Is all of this correct?? Would this be the best way to approach this problem??
    Thanks,
    Brian

    Hi,
    Thanks for both of your replies!! i have tested this and found it to be sucessful making my task a lot easier. :-)
    Anyhow my other question regarding this is - on phones that ask you if you want the user data to persist.. is it possible to ensure that the user data is always saved.. thus removing this prompt or is this prompt standard on the device and cannot be changed.
    Thanks,
    Brian

  • Maximum number of RecordStores per Midlet

    Does anybody know if there is a maximum number of recordStores per midlet suite?
    If you have any info about this on any specific phone or any series, pls let me know. I'd just like an overview of most.
    Please, no info on the maximum size per RMS. Just the number of RMS's per Midlet/midlet suit.
    Thanks alot!

    Yes I know it's phone dependent. I just want to know if anyone has any information about any models etc... so i can come up with some average idea. It will be far from accurate... but it's the best i have.

  • Can I Open WebPage From A Midlet !!!!!!

    Hello All,
    My question is "Can i open a wml page in my mobile from a midlet". I have a servlet containing wml contents(comprising links of some jad files). Now I have a Midlet from which i want to open the page ( servlet ) in my mobile in which i will click the link of jad file to download application from my webserver. If possible then how??
    Thanx & Regards

    Of course you can. but you dont have a wml browser in MIDP so you have to parse the wml tags on your own and display them on the screen. Same for html. you manually have to extract the links and present them as such.
    You also cant download a program (jad/jar) and run it from your MIDlet. This is not allowed, one MIDlet cant start another. Also you cant write that program in the file system of your phone using MIDP. You are just able to store it in the RMS, which is MIDlet dependend and thus of no great use.
    hth
    Kay

  • Midlet - Application prompts me

    Hello, I have made an midlet applicationen that uses GPS and PushRegistry. My problem is that the Application prompts me for security reasons, every time it starts automatically and every time it uses GPS. (The application can't be used if i does that).
    How can I avoid the phone prompts me? Please help me.
    Will it help with a Code Signing certificates or will I still be prompted?

    Hi X999 !
    1) have u added following API permissions in the JAD ?
    MIDlet-Permissions: javax.microedition.io.PushRegistry, javax.microedition.location.Location
    2) Check whether your jar is signed properly.
    After signing the app, you can open the JAD using a text editor and see something like this..
    MIDlet-Certificate-1-1: MIIE8DCCA9ig......
    MIDlet-Certificate-1-2: MIIEvzCCBCigAwIBAgI.......
    MIDlet-Jar-RSA-SHA1: mFmUFyx0wQlAwl6O4GRRjAKWh2LM07ZEdR....
    or some time... there will be individual RSA- digest for every class in MANIFEST.MF .. you have to extract the jar and see..
    3)
    X999 wrote: Why can't I select "Never Ask" for internet, GPS, PushReg - as I can with the RecordStore? Is this problem phone dependent?Permission to access APIs depends on followings.
    a) is MIDlet suite untrusted (Unidentified Third Party Protection Domain) .
    b) is MIDlet suite signed and Protection domains of MIDlet suite one of followings ( usually Identified Third Party, it can be Operator, Manufacturer).
    c)A set of Allowed and User permissions that may be granted to a MIDlet suite.
    d)A set of permissions that the user may authorize (User); each with its user interaction mode.
    e)User Permission Interaction Modes.. this is what you can set in the application security in the phone
    like, ask never, ask once, ask every time...
    and the reason for why you can select "Never Ask" for internet, GPS, PushReg - as I can with the RecordStore is because.. MIDP 2.1 spec says..
    The untrusted domain for untrusted MIDlet suites MUST allow, without explicit confirmation by the user,access to: javax.microedition.rms, javax.microedition.midlet, javax.microedition.lcdui, javax.microedition.media. {color:#ff0000}So, there is nothing special about whether you can select more options like never ask in user permission interaction modes. {color}
    And MIDP 2.1 spec says..
    The untrusted domain for untrusted MIDlet suites MUST allow, with explicit confirmation by the user, access to protected APIs or functions:javax.microedition.io.HttpConnection, javax.microedition.io.HttpsConnection.You can notice one point here, {color:#ff0000}because of this reason, there is no never ask option here.{color}
    more over, MIDP 2.1 spec says..
    A MIDlet suite that requires access to protected APIs or functions must request the corresponding permissions.
    Permissions requested can be required by listing the permissions in the attribute MIDlet-Permissions. These permissions are critical to the function of the MIDlet suite and it will not operate correctly without them.If the MIDlet suite can function correctly with or without particular permission(s) it should request them using the MIDlet Permissions-Opt attribute.And {color:#ff0000}access to protected APIs depends on sensitivity of the API {color}(will you allow a signed app to send SMS without your permission) {color:#ff0000}and protected domain{color}.So you will not have never ask options in user permission interaction modes.
    -Jestan
    Edited by: Jestan on Aug 25, 2009 8:27 PM

  • Opening and closing files

    I'm currently writing a financial tracking program for the mobile phones and since I need a number of files to work with each time, my idea is to work with only one file opened at a time (since I don't want to open too much files that could slow down the phone). My question is, is it possible to open/create a file and close it, and then open it and close it everytime I need some info from the file? If it isn't possible, is there any other way to do this? Any suggestions will be appreciated.
    Thanks.

    I assume that you mean "record stores" as opposed to "files" in your question as you mention that you intend to use RMS . Your MIDlet Suite can open/create record stores using the method openRecordStore which returns an object of type RecordStore. There are a number of methods that can be used on this return value for more detailed access. RecordStores are closed with closeRecordStore method that only completes if all outstanding opens have been matched with a corresponding close operation.
    Hope that helps!
    MJ

  • Storage capacity of RMS

    Hi,
    What is the Storage capacity of record store.pls tell me how much of kb or bytes we can store in rms. Is tere any Possibility to store the captured image directly to the rms instead of stroing in the memory card or files.....
    Thanks n advance

    What is the Storage capacity of record store.pls tell me how much of kb or bytes we can store in rms.{color:#0000ff}http://developers.sun.com/mobility/midp/articles/databaserms/{color}
    Is tere any Possibility to store the captured image directly to the rms instead of stroing in the memory card or files.....{color:#0000ff}http://developers.sun.com/mobility/midp/ttips/imagesinrms/{color}
    Thanks n advance{color:000080}Searching the Sun website and Google will get you more and quicker results than waiting for a response here.
    db{color}

  • Midlet gets null values from servlet

    hey,
    based on one of the source code examples on the java.sun.com website i made a midlet/servlet application. the midlet is sending a product id to the servlet, the servlet queries the database and shows the productinformation, the midlet reads the servlet output and displays it on his midlet form
    when i invoke the servlet in my browser: http://localhost:8080/Magazijn/query?product=1 then everything works fine (i see: Product Name : Deur). when the midlet is invoking the servlet i see Product Name : null
    after hours of searching the only thing i could come up with is that the servlet isn't passing the string retrieved from the resultset to the midlet
    the strange thing is that when i papss a normal string, for instance:
    String test = "test";
    out.println(test);
    that he shows this correct both in my browser and midlet
    when i do this:
    prodName = resutl.getString("name");
    out.println(prodName);
    i see "Deur" in my browser, but i see "null" in my midlet
    anyone can help me?
    here's the servlet source:
    import java.io.*;
    import java.sql.*;
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.util.Date;
    public class Magazijn extends HttpServlet {
    public void doGet(HttpServletRequest request,
              HttpServletResponse response)
                        throws IOException, ServletException {
              doPost(request,response);
    public void doPost(HttpServletRequest request,
              HttpServletResponse response)
                        throws IOException, ServletException {
         String url="jdbc:mysql://localhost/test?user=root&password=root";
         Connection con = null;
         Statement stmt;
         ResultSet rs;
         String query;
         int prodId;
         String prodNaam;
         String prodPlaats;
         String prodAantal;
         response.setContentType("text/plain");
         PrintWriter out = response.getWriter();
         BufferedReader br = request.getReader();
         String buf = br.readLine();
         try {
                   //laden van de mysql driver
                   Class.forName("com.mysql.jdbc.Driver");
                   //maken van connectie met database
                   con = DriverManager.getConnection (url, "root", "root");     
                   //aanmaken van statement object
                   stmt = con.createStatement();
                   //nakijken welke naam we zoeken van product
                   String prod = request.getParameter("product");
                   //uitvoeren van query en die opvangen in een resultset
                   query = "SELECT * from onderdelen where id="+prod;
                   ResultSet result = stmt.executeQuery(query);
                   result.next();
                   prodId = result.getInt("id");
                   prodNaam = result.getString("naam");
                   prodPlaats = result.getString("plaats");
                   prodAantal = result.getString("aantal");
              out.println(new Date());
              out.println("");
                   out.println("Product ID: "+prodId);
                   out.println("Productnaam: "+prodNaam);
                   out.println("Plaats: "+prodPlaats);
                   out.println("Aantal: "+prodAantal);
              catch(ClassNotFoundException e) {
                   out.println("Could not load database driver: " + e.getMessage());
              catch(SQLException e) {
                   out.println("SQLException caught: " + e.getMessage());
              finally {
                   //sluiten database connectie
                   try {
                        if (con != null) con.close();
                   catch (SQLException e) {}
    here's the midlet source:
    import javax.microedition.rms.*;
    import javax.microedition.lcdui.*;
    import javax.microedition.midlet.*;
    import javax.microedition.io.*;
    import java.io.*;
    import java.util.Vector;
    public class MagazijnMidlet extends MIDlet implements CommandListener {
    Display display = null;
    List menu = null;
    TextBox input = null;
    String prodid = null;
    String url = "http://localhost:8080/Magazijn/query";
    static final Command backCommand = new Command("Terug", Command.BACK, 0);
    static final Command submitCommand = new Command("Verstuur", Command.OK, 2);
    static final Command exitCommand = new Command("Afsluiten", Command.STOP, 3);
    String currentMenu = null;
    public MagazijnMidlet() { }
    public void startApp() throws MIDletStateChangeException {
    display = Display.getDisplay(this);
    menu = new List("Maak uw keuze", Choice.IMPLICIT);
    menu.append("Opvragen product gegevens", null);
    menu.addCommand(exitCommand);
    menu.setCommandListener(this);
    mainMenu();
    public void pauseApp() { }
    public void destroyApp(boolean unconditional) {
    notifyDestroyed();
    void mainMenu() {
    display.setCurrent(menu);
    //Vraag om productnummer op te geven
    public void askProdid() {
    input = new TextBox("Geef Productnummer:","", 5, TextField.ANY);
    input.addCommand(submitCommand);
    input.addCommand(backCommand);
    input.setCommandListener(this);
    input.setString("");
    display.setCurrent(input);
    //Maken connectie midlet + verwerking
    void invokeServlet(String url) throws IOException {
    HttpConnection c = null;
    InputStream is = null;
    OutputStream os = null;
    StringBuffer b = new StringBuffer();
    TextBox t = null;
    try {
    c = (HttpConnection)Connector.open(url);
    c.setRequestMethod(HttpConnection.POST);
    c.setRequestProperty("IF-Modified-Since",
         "20 Jan 2001 16:19:14 GMT");
    c.setRequestProperty("User-Agent",
         "Profile/MIDP-1.0 Configuration/CLDC-1.0");
    c.setRequestProperty("Content-Language", "en-CA");
    // send request to the servlet.
    os = c.openOutputStream();
    String str = "product="+prodid;
    byte postmsg[] = str.getBytes();
    System.out.println("Length: "+str.getBytes());
    for(int i=0;i<postmsg.length;i++) {
    os.write(postmsg);
    // or you can easily do:
    //os.write(("product="+prodid).getBytes());
    os.flush();
    // receive response and display it in a textbox.
    is = c.openInputStream();
    int ch;
    while((ch = is.read()) != -1) {
    b.append((char) ch);
    System.out.print((char)ch);
    Form formProdGeg = new Form ("Gegevens product");
    StringItem infoItem = new StringItem("",b.toString());
    formProdGeg.append (infoItem);
    formProdGeg.addCommand (backCommand);
    formProdGeg.setCommandListener (this);
    display.setCurrent (formProdGeg);
    } finally {
    if(is!= null) {
    is.close();
    if(os != null) {
    os.close();
    if(c != null) {
    c.close();
    display.setCurrent(t);
    // event handler
    public void commandAction(Command c, Displayable d) {
    String label = c.getLabel();
    if(label.equals("Afsluiten")) {
    destroyApp(true);
    } else if (label.equals("Terug")) {
    mainMenu();
    } else if (label.equals("Verstuur")) {
    prodid = input.getString();
    try {
    invokeServlet(url);
    }catch(IOException e) {}
    } else {
    askProdid();
    tia
    lee

    Hi,
    first for some efficeincy, in your place your connection to the database in the init() method so you can have on instance of the connection.
    in your midlet place the ui initialization in its constructor
    ok, Why dont you try the query in the url
    i.e http://localhost:8080/Magazijn/query=";
    then as you input the product id without setting requests
    c = (HttpConnection)Connector.open(url+productid);
    i think it will work properly
    tell me what happens with you

  • Help needed in RMS Persistent Storage

    I used RMS record store to insert and retrieve records from and to a byte array ( I followed a tutorial example program), using ByteArrayInputStream , ByteArrayOutputStream classes.
    I want to store it permanently in a persistent storage.
    So, what should I do .?
    Please help me in this regard.
    Thank you.

    Thank for your response.
    But, I'm not clear.
    I was able to store records in a byte array stream and retireve it.
    So, I had to store and retireve the records from the same MIdlet.
    What if i closed the Midlet application and I want to retrieve the data at a later stage.( Like in desktops, data are stored in files in the filesystem, I want to know the filesystem in which my data wil be permanently stored.
    I'm using NetBeans 6.0 IDE
    I created a MIDlet.
    Please help.

  • Midlet Signing

    Hello,
    Questions
    - Is trusted third party signing enough to reach a significant amount of JSR-75 compatible mobiles, with a good user experience ?
    -What is the best third party for signing midlets ?
    - Is Manufacturer & Operator Sining feasible for a small company ?
    Background
    we're involved in a project that aims at accessing various data on the memory car/Internal memory/Sim+ memory of mobile phones.
    we know JSR-75 "File connection" is a must to do that, and we wish to use it on every capable phone.
    Different-devices = different-behaviour
    However, we are facing a platform/menufacturer specific issue :
    With an unsigned midlet :
    -Nokia device (6680, 6120, n95...) give access to the data, but keeps asking the permission to the user each time he wants to read a single file
    -Sagem (my700x) device allows us to configure the program so that we're asked only once the permission.
    - Motorola (RAZR V3i) freezes....
    Midlet signing solutions
    I know that midlet signing can help. However, we don't know which signing process suites our need :
    - Java Code Signing (self-certification using keytool)
    - Java Code Signing - Trusted third party (buying the certificate from Verysign or Thawthe as in google mail)
    - Manufacturer & Operator.
    Edited by: Nicolas_Dmailer on Dec 19, 2007 8:16 AM
    Edited by: Nicolas_Dmailer on Dec 19, 2007 11:53 PM

    Signing issue related with permission of midlet like to send the SMS to open the http connection that api required certification of third party & u can sign the midlet using tool givan by java itself
    here is link u can see the how to sign the midlet first then follow the certification procedure
    http://developers.sun.com/techtopics/mobility/wtk/demos/wtk-sign.html
    its link how can sign with wireless tollkit
    to certification u can follow but u have to check u rdevice which certification support then choose
    1) Verisign certification : u can visit www.verisign.com here u got the link for digital key under u got link for for sun java certification
    2)Also u can follow thawte certification : u can visit also thwate.com
    3)Or u can visit for java certification www.javacertification.com
    Regards
    AB
    for RMS persistence issue no need of signing u have to check code

  • Downloading files through a MIDlet

    Hi there, I am new to the J2ME network connections API, especially for downloading data through a MIDlet. I have a small question I hope you could provide some assistance on.
    I was wondering if there was a way to download data (ie: a text file) from a website or server. I know that there is a class called "FileConnection" that may do this, but I was wondering how to use it to do that. Also, is there a way to do it without the FileConnection API for phones that do not support it? And as for when the data is downloaded, where exactly on the phone is it stored? In the RMS? Is there a way to download the data into the "/res" folder directly?
    Any help would be appreciated,
    thanks,
    take care

    You can do it by a thread, sample run function is given below
    public void run() {
            HttpConnection c = null;
            DataInputStream is = null;
            DataOutputStream os = null;      
            try
                String downloadURL = "yourdownloadurl";
                c = (HttpConnection) Connector.open(downloadURL);   
                c.setRequestMethod(HttpConnection.GET);
                int resCode = c.getResponseCode();   
                is = new DataInputStream(c.openInputStream());
                ByteArrayOutputStream baos = new ByteArrayOutputStream();                       
                os = new DataOutputStream(baos);                     
                int v;
                byte []data = new byte[2048];
                while ((v = is.read(data)) >0 && downloading) 
                    os.write(data,0,v);
                os.flush();
                is.close();
                os.close();
                baos.close();
                c.close();
                System.out.println("The file is "+baos.toString());
            catch (Exception e)
    }Edited by: Shimul on Oct 7, 2007 3:32 AM

  • Package javax.microedition.midlet does not exist

    Hi:
    I am trying to run the Currency Converter MIDlet. I am using SUnONE4. I have got all the updates for the SUN ONE. When I compile the Converter directory.. i get the following errors.. which indicate that it can't find the javax.micoredition..packages.
    converter/ConverterMIDlet.java [11:1] package javax.microedition.midlet does not exist
    import javax.microedition.midlet.*;
    ^
    converter/ConverterMIDlet.java [12:1] package javax.microedition.lcdui does not exist
    import javax.microedition.lcdui.*;
    ^
    converter/ConverterMIDlet.java [13:1] package javax.microedition.rms does not exist
    import javax.microedition.rms.*;
    I havem't downloaded the J2ME since i presume that i don't need it since i have updated SunONe. There inside the SUNone i can see under the Device Emulator registory the J2ME wireless toolkit.
    Can anyon ehelp please.

    make sure you have the microedition classes are in your classpath
    --Senthil                                                                                                                                                                                   

  • Problem with running the midlet class (Error with Installation suite )

    hi everyone...
    i have problem with running the midlet class(BluetoothChatMIDlet.java)
    it keep showing me the same kind of error in the output pane of netbeans...
    which is:
    Installing suite from: http://127.0.0.1:49296/Chat.jad
    [WARN] [rms     ] javacall_file_open: wopen failed for: C:\Users\user\javame-sdk\3.0\work\0\appdb\delete_notify.dat
    i also did some research on this but due to lack of forum that discussing about this,im end up no where..
    from my research i also find out that some of the developer make a changes in class properties..
    where they check the SIGN DISTRIBUTION...and also change the ALIAS to UNTRUSTED..after that,click the EXPORT KEY INTO JAVA ME SDK,PLATFORM,EMULATOR...
    i did that but also didnt work out..
    could any1 teach me how to fix it...
    thanx in advance... :)

    actually, i do my FYP on bluetooth chatting...
    and there will be more than two emulators running at the same time..
    one of my frens said that if u want to run more than one emulator u just simply click on run button..
    and it will appear on the screen..

  • Persistence of data in J2ME mobile device using RMS

    Hi. Just want to ensure that RMS can let us store some values in the mobile device. I'm using emulator to try this out. Everytime i close the emulator, the data stored in the RecordStore's gone. How about in real mobile device?
    For some reasons, my jad and jar can't be installed in my Nokia 6210. It keeps giving me "Invalid Jar file" error.
    So, my main question is whether RMS really stores the value in the mobile device and can be retrieved everytime that MIDlet app's run again.
    The other question is why is it that my jar can't be installed in my Nokia 6210? I just built it with NetBean with J2ME and it could be run on the emulator perfectly.
    Thanks a lot.

    Hi. For the installation to my phone, i have solved it by changing my app's MIDP version 2.1 to 2.0.
    For the persistence of data part, i changed the Storage->"Storage Root Directory" to "\save" in Preferences of SJWTK and re-run my app on the emulator and my phone. However, it seems that the record store's data is not persisted. So, i assume it has something to do with my code. My code is as below. Can anyone give me some clues on what i have done wrong? Thanks.
    public TheConstructor(MIDlet midlet, Form form, int partnerId){
         try
          // The second parameter indicates that the record store
          // should be created if it does not exist
            rs = RecordStore.openRecordStore(REC_STORE_NAME, true );
            if (rs.getNumRecords() == 0) {
                RecordIdParam = getAdsParam();
                if (clientIdParam.length > 0) {
                    clientId = RecordIdParam;
                    writeRecord(RecordIdParam);
                    readRecords();
                    closeRecStore();  // Close record sto
            else {
                readRecords();
                closeRecStore();  // Close
         catch (Exception e)
          db(e.toString());
    private void db(String str)
        System.err.println("Msg: " + str);
      public void closeRecStore()
        try
          rs.closeRecordStore();
        catch (Exception e)
          db(e.toString());
       public void writeRecord(String str)
        byte[] rec = str.getBytes();
        try
          rs.addRecord(rec, 0, rec.length);
        catch (Exception e)
          db(e.toString());
      public void readRecords()
        try
          // Intentionally make this too small to test code below
          byte[] recData = new byte[5];
          int len;
          System.out.println("num of records is " + rs.getNumRecords());
          for (int i = 1; i <= rs.getNumRecords(); i++)
            if (rs.getRecordSize(i) > recData.length)
              recData = new byte[rs.getRecordSize(i)];
            len = rs.getRecord(i, recData, 0);
            RecordIdParam = recData;
        catch (Exception e)
          db(e.toString());
      }

  • How to read a RMS file

    Is it possible to read a RMS file from my pc written by a Midlet application?
    I need to find a way to read the rms file and convert it to any format supported by SQL or MS Access.
    Thnx!

    Rms file structure depend on device.
    You must change the point of view.
    Don't read rms file by read the file structure but by using the RMS class in j2me.
    For example If I have a device that store(in rms) a contacts list by j2me application.
    Then I would to store this contact list in mysql or access db I must read the contact list by rms api, store the data in j2me structure (array for example) and then transfer it by http, socket, bluetooth etc in a server that store the data in db.
    Another solution is like the first post: Read the rms contents (by RMS api) and store it in a text file(you can do it only in a device with JSR-75 File api). Then import txt file in db.
    Don't try to read rms file generated by device in emulator or viceversa is impossible.
    http://developer.sonyericsson.com/site/global/techsupport/tipstrickscode/java/p_tipcode103.jsp
    http://www.java2s.com/Code/Java/J2ME/Readandwritetotherecordstore.htm

Maybe you are looking for

  • I can't register for the Add-Ons-Personas Forum. It keeps giving me a "Forbidden" error. What should I do? Thanks.

    I was registered with the Personas Google Group which said it had moved to the Firefox Add-Ons section. My sign in for Google Group does not work and I cannot register with the Add-Ons Forum. I simple have a question regarding Personas as I am a desi

  • IPad remote app on 5 ghz band

    Can anyone help? On my ipad  original and iPad 3 I cannot get the remote app to work for connecting to Apple TV or iTunes library when using the 5 ghz band of my NETGEAR wndr 3700 router. It displays the symbols in the remote app fine but after a whi

  • Photoshop Elements 9 question

    I just installed Photoshop Elements 9 on a laptop. I had it previously installed on a pc but the motherboard died and so I installed it on a different laptop to get by until getting a new latop. I get a message saying I need to deactivate photoshop f

  • Zero debit for non deductable account  in A\P invoice in Canada loc

    Hi We set the new tax code with rate 13% and non deduction 61.5% . So when we issue the A/P invoice with net amount 1250 $ I expect to see in JE (I was able to create it in demo Canadian database) : 1.Credit vendor 1412.50 2.Debit expense 1250 3.Debi

  • Label

    Hi, I have created one form with 12.Blue Gray Theme- In that form I have an Item with Label- Previously that Label had required label-. At that moment it showed red color with Underline.... When I had changed to "Optional Template"-. It shows Black c