{
  "id": "1997-february-tricks-with-the-delete-marker",
  "slug": "1997-february-tricks-with-the-delete-marker",
  "url": "https://dwillis.github.io/uplink/article/1997-february-tricks-with-the-delete-marker.html",
  "year": 1997,
  "month": "February",
  "monthNum": 2,
  "headline": "Tricks with the delete marker",
  "kicker": "Tech Tip",
  "author_name": "Richard Mullins",
  "author_title": "NICAR instructor",
  "affiliation": "NICAR/Missouri School of Journalism",
  "summary": "FoxPro's DELETE TAG feature can be used as a marking system to identify and filter records in a table without adding columns, allowing journalists to sort and categorize data like distinguishing between individual and business names.",
  "keywords": [
    "FoxPro",
    "database",
    "filtering"
  ],
  "topics": [
    "Data & Databases",
    "Investigative Methods",
    "Technology"
  ],
  "technologies": [
    "FoxPro",
    "SQL"
  ],
  "full_text": "Tricks with the delete marker\n\nBy Richard Mullins\nNICAR/Missouri School of Journalism\n\nWhen we process and scan paper records and lists, we often use a sort of check-mark system to digest the information. It turns out that FoxPro has a feature that can be used as a check mark for a row in a table, without adding any columns to the table.\n\nWhat FoxPro calls the DELETE TAG is used to mark records to be permanently removed from the table by the PACK command. Unless that command is issued, the tag has no effect, so you can use it as a marker for all sorts of things.\n\nThe marker can be set row by row, by clicking the box at the very left of the table display, or it can be set by a command typed in the command window, with limits on the scope of the command specified by logical conditions. You can browse or select records based on this marker. You can remove the markers manually and individually, or by logical condition, you can remove them all.\n\nHere is an example. You have a table with a column called \"name.\" The problem is that it contains both individual and business names, and you want to untangle this by marking the business names.\n\nYou make a guess that business names will have certain words and characters in them that wouldn't typically be found in an individual name. You can test this theory by setting the delete tag on all the rows that have these. Then you browse only the marked records in the table and remove the marks from records that really are individuals. As you remove the marks, they disappear from the browse window, (not the table) leaving only the rows still to be examined.\n\nSeveral commands in FoxPro, such as replace, delete, and browse, can have a logical condition specified to limit the extent of the command. This logical condition works just like the WHERE clause in SQL, except in FoxPro the word FOR introduces the condition.\n\nIf you haven't used the $ before, it creates a logical, or true/false test on an expression, just like the equal sign does in State = \"WY\"\n\nAn expression using the $ roughly translates to: \"Is String1 found anywhere within String2?\"\n\n* set delete marker for names\n* that contain ampersands,\n* and business suffixes:\ndelete for \"Inc.\" $ Name\ndelete for \"Co.\" $ Name\ndelete for \"&\" $ Name\n* now browse just the delete-flagged records\nbrowse for deleted\n\nThe deleted() function gives the answer true or false for each record in the table, depending on whether the delete tag is set.\n\nWhen you browse through the records, you might find a row where the name column contains, \"Smith, Mr. & Mrs. William.\" You would remove the delete tag for this record, and it would disappear from the browse window.\n\nIf you have to start over, remove the delete tag on some or all of the records:\n\nremove delete tag for all records: recall all\nremove tag for some records:\nrecall for \"&\" $ Name\n\nRichard Mullins can be reached at (573) 882-2127, or send e-mail to richard@nicar.org",
  "provenance": {
    "extracted_by": "anthropic/claude-sonnet-4-6",
    "extracted_at": "2026-07-05",
    "verified": true
  },
  "similar": [
    {
      "slug": "1997-may-cheating-at-foxpro",
      "score": 0.19
    },
    {
      "slug": "1997-january-use-foxpro-to-document-a-table",
      "score": 0.178
    },
    {
      "slug": "1998-april-foxpro-to-access-and-back-again",
      "score": 0.17
    },
    {
      "slug": "1994-june-fixing-data-in-foxpro",
      "score": 0.164
    },
    {
      "slug": "1998-march-cleaning-tables",
      "score": 0.16
    }
  ],
  "html_url": "https://dwillis.github.io/uplink/article/1997-february-tricks-with-the-delete-marker.html",
  "json_url": "https://dwillis.github.io/uplink/article/1997-february-tricks-with-the-delete-marker.json"
}