code: public boolean doCommand(String strCommand, ScreenField sourceSField, int iCommandOptions)
      {
          if (strCommand.indexOf('=') == -1)
              if (this.getMainRecord() != null)
          {
              int iDocType = this.getMainRecord().commandToDocType(strCommand);
              if (iDocType > ScreenConstants.LAST_MODE)
              {       // Display the user defined screen.
                  boolean bSuccess = (this.onForm(null, iDocType, true, iCommandOptions, null) != null);
                  if (bSuccess)
                      return bSuccess;    // Return if successful.
              }
          }
          return super.doCommand(strCommand, sourceSField, iCommandOptions); // This will send the command to my view
      }
docs: Process the command.
  Step 1 - Process the command if possible and return true if processed.
  Step 2 - If I can't process, pass to all children (with me as the source).
  Step 3 - If children didn't process, pass to parent (with me as the source).
  Note: Never pass to a parent or child that matches the source (to avoid an endless loop).
  @param strCommand The command to process.
  @param sourceSField The source screen field (to avoid echos).
  @param iCommandOptions If this command creates a new screen, create in a new window?
  @return true if success.