/** Creates a new instance of PersonWiz */
  public CheckBulkWiz(SqlRun str, java.awt.Frame owner, FrontApp fapp, EQuery equery)
      throws org.xml.sax.SAXException, java.io.IOException, MessagingException {
    super(owner, fapp.swingerMap());
    setSize(700, 530);

    str.execSql(VettEmail.checkBulkEmailQuery(equery.getSql(fapp.equerySchema())));

    JScrollPane scroll;

    final IdSqlPanel noEmail = newIdSqlPanel(fapp);
    final TableRowCounter noEmailCount = noEmail.newRowCounter();
    noEmail
        .getTable()
        .executeQuery(
            str,
            " select id from _mm" + " where _mm.iscurrent and not _mm.hasemail;\n",
            "lastname,firstname");

    //	final IdSqlPanel notCurrent = newIdSqlPanel(fapp);
    //	final TableRowCounter notCurrentCount = notCurrent.newRowCounter();
    //	notCurrent.getTable().executeQuery(str,
    //		" select id from _mm" +
    //		" where not _mm.iscurrent;\n"
    //		, "lastname,firstname");

    final IdSqlPanel goodAddr = newIdSqlPanel(fapp);
    final TableRowCounter goodAddrCount = goodAddr.newRowCounter();
    goodAddr
        .getTable()
        .executeQuery(
            str,
            " select id from _mm" + " where _mm.iscurrent and _mm.hasemail;\n",
            "lastname,firstname");

    str.execSql(" drop table _mm;\n");

    str.flush();

    addWidget("goodAddr", goodAddr);
    addWidget("goodAddrCount", goodAddrCount);
    //	addWidget("notCurrent", notCurrent);
    //	addWidget("notCurrentCount", notCurrentCount);
    addWidget("noEmail", noEmail);
    addWidget("noEmailCount", noEmailCount);
    super.addSubmitButton("updateaddr", "Update Emails");

    loadHtml();
  }