{"id":7242,"date":"2015-05-06T08:35:15","date_gmt":"2015-05-06T12:35:15","guid":{"rendered":"http:\/\/www.iri.com\/blog\/?p=7242"},"modified":"2017-11-07T09:53:18","modified_gmt":"2017-11-07T14:53:18","slug":"test-phone-number-generation-using-rowgens-compound-data-value-wizard","status":"publish","type":"post","link":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/","title":{"rendered":"Test Phone Number Generation: Using RowGen&#8217;s Compound Data Value Wizard"},"content":{"rendered":"<p>One of the ways <a href=\"http:\/\/www.google.com\/url?q=http%3A%2F%2Fwww.iri.com%2Fproducts%2Frowgen&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNFXZIE1KJNaw4dOPvvrpbqttc7fQQ\">IRI RowGen<\/a>\u00a0builds <a href=\"https:\/\/www.google.com\/url?q=https%3A%2F%2Fwww.iri.com%2Fblog%2Ftest-data%2Fmaking-realistic-test-data-production%2F&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNF-DSL9q60Zp-gjG_HGkz8NOGSRsQ\">realistic test data<\/a>\u00a0is through the formation and population of custom field values, such as phone numbers. In this article,\u00a0we explain how to use the Compound Data Value (CDV) wizard in the <a href=\"http:\/\/www.google.com\/url?q=http%3A%2F%2Fwww.iri.com%2Fproducts%2Fworkbench%2Frowgen-gui&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNHtg-XhU7eAUj2IwKIvmpfZ3H2mfw\">RowGen GUI<\/a>\u00a0to build a set file containing real-looking,\u00a0US phone numbers based on the North American Numbering Plan (NANP).<\/p>\n<p>The CDV wizard is one of several \u201cset file\u201d creation tools available in RowGen designed to create what is,\u00a0effectively,\u00a0a custom data type. It produces\u00a0values by concatenating fields with user-specified string literals. The field values themselves can be literal, randomly-generated in a selected data type (within a range), or, randomly selected from a set file or DB column.<\/p>\n<p>The NANP\u00a0is an integrated telephone numbering scheme that encompasses 25 countries and territories,\u00a0primarily in North America, the Caribbean, and US territories. The NANP number format may be summarized in the notation NPA-NXX-xxxx. Thus,\u00a0we are\u00a0creating our test numbers from three named components, with literal dashes &#8220;-&#8221; in between: AREACODE, PREFIX, and STATIONCODE.<\/p>\n<ul>\n<li>AREACODE is pulled from the areacodes_us.set file that ships with RowGen.<\/li>\n<li>PREFIX is a NUMERIC type field, with a SIZE of 3, and a PRECISION of 0, and uses a range &#8220;[201,999]&#8221;.<\/li>\n<li>STATIONCODE is just a random DIGIT \u201c type field\u201d, with a SIZE of 4.<\/li>\n<li>For additional realism, we added named conditions to omit all PREFIX that end in &#8220;11&#8221;, as per the NANP.<\/li>\n<\/ul>\n<p>This is the finished script created by the CDV wizard, which produced the code below\u00a0and then modified to add the \/CONDITIONs and \/OMIT.<\/p>\n<p><span style=\"text-decoration: underline;\"><strong>Steps to Create the Set File<\/strong><\/span><\/p>\n<p><strong>Step 1.<\/strong><\/p>\n<p>Create a New Project=&gt; From The Top Menu,\u00a0Select the Rowgen Wizard and Select New Set File. Select Compound Data Values and click Next (screen below).<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 522.00px; height: 434.00px;\"><img decoding=\"async\" style=\"width: 522.00px; height: 434.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 2.<\/strong><\/p>\n<p>Next,\u00a0you will be provided with the Compound Data Setup screen. Then put a file name in the \u00a0File\u00a0name\u00a0field (in this case,\u00a0we are using create_us_phone_numbers.rcl),\u00a0and click Next.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 526.00px; height: 499.00px;\"><img decoding=\"async\" style=\"width: 526.00px; height: 499.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-1.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 3.<\/strong><\/p>\n<p>Next is the\u00a0Compound Data Output screen. Specify the set file name (that we need to generate) \u2026 in this case,\u00a0\u201cus_phone_numbers.set.\u201d<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 516.00px; height: 493.00px;\"><img decoding=\"async\" style=\"width: 516.00px; height: 493.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-2.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 4.<\/strong><\/p>\n<p>Next, in\u00a0the\u00a0Compound Data Definition screen, click Add \u2026 to build fields into the Component list:<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 527.00px; height: 495.00px;\"><img decoding=\"async\" style=\"width: 527.00px; height: 495.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-3.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 5.<\/strong><\/p>\n<p>You have two options: Literal string or Generated value. We chose Generated value for AREACODE\u00a0using the DIGIT data type, and will select that data from a Set file.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 525.00px; height: 432.00px;\"><img decoding=\"async\" style=\"width: 525.00px; height: 432.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-4.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 6.<\/strong><\/p>\n<p>We have an existing set file (areacodes_us.set)\u00a0to use,\u00a0so\u00a0click on\u00a0the\u00a0Finish button, and the first three\u00a0digits\u00a0of the phone number will be created.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 530.00px; height: 434.00px;\"><img decoding=\"async\" style=\"width: 530.00px; height: 434.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-5.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 7.<\/strong><\/p>\n<p>Our Next step is\u00a0to create the \u201c-\u201d between the area code and rest of the number. We do\u00a0that by selecting the Literal screen radio button and entering\u00a0a \u201c-\u201d in the Value Field.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 523.00px; height: 437.00px;\"><img decoding=\"async\" style=\"width: 523.00px; height: 437.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-6.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 8.<\/strong><\/p>\n<p>Next,\u00a0we\u2019ll create the PREFIX section of the phone number by selecting the radio button Generated value,\u00a0and defining the name of the Field, data type and Method,\u00a0which is shown below.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 514.00px; height: 429.00px;\"><img decoding=\"async\" style=\"width: 514.00px; height: 429.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-7.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 9.<\/strong><\/p>\n<p>Click Next for the Random Generation\u00a0Attributes\u00a0screen and change the size for the middle 3 digits of the phone number.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 527.00px; height: 433.00px;\"><img decoding=\"async\" style=\"width: 527.00px; height: 433.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-8.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 10.<\/strong><\/p>\n<p>Click Next for the Range Selection screen. Use minimum value 201 and maximum 999 to produce a \u201cin-line\u201d set in the RowGen script, SET={[201,999]}. Click Finish.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 522.00px; height: 425.00px;\"><img decoding=\"async\" style=\"width: 522.00px; height: 425.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-9.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 11.<\/strong><\/p>\n<p>Click the Add button on the final Compound Data Definition screen, where we create the last 4 digits of the phone number. Click Finish.<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 522.00px; height: 434.00px;\"><img decoding=\"async\" style=\"width: 522.00px; height: 434.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-10.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Step 12.<\/strong><\/p>\n<p>After adding all the fields,\u00a0the final screen should\u00a0look like this:<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 522.00px; height: 498.00px;\"><img decoding=\"async\" style=\"width: 522.00px; height: 498.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg\" alt=\"\" \/><\/span><\/p>\n<p>After clicking\u00a0Finish,\u00a0the script below\u00a0is created, and when run, will generate 4000 records (INCOLLECT=4000) in a 109KB file. By changing the INCOLLECT value in the script to 10,000 and then 15,000, 40,000, and\u00a050,000,\u00a0we created 10,000 (file size:136 KB), 15,000 (file size: 205KB), 40,000 (file size: 410 KB),\u00a0and 50,000 (file size:683 KB) phone numbers.<\/p>\n<p>The wizard then generates this RowGen Control Language (.rcl) file automatically:<\/p>\n<pre> \/INFILE=random\r\n \/PROCESS=RANDOM\r\n \/INCOLLECT=4000\r\n \/FIELD=(AREACODE, TYPE=DIGIT, SIZE=3, SET= ANY \"C:\/IRI\/RowGen31\/sets\/areacodes_us.set\" DEFAULT = \"\", POSITION=1, SEPARATOR=\"\\t\")\r\n \/FIELD=(PREFIX, TYPE=NUMERIC, SIZE=3, FILL='0', PRECISION=0, SET={[201,999]}, POSITION=2, SEPARATOR=\"\\t\")\r\n \/FIELD=(STATIONCODE, TYPE=DIGIT, SIZE=4, POSITION=3, SEPARATOR=\"\\t\")\r\n \/CONDITION=(X211, TEST=(PREFIX EQ 211))\r\n \/CONDITION=(X311, TEST=(PREFIX EQ 311))\r\n \/CONDITION=(X411, TEST=(PREFIX EQ 411))\r\n \/CONDITION=(X511, TEST=(PREFIX EQ 511))\r\n \/CONDITION=(X611, TEST=(PREFIX EQ 611))\r\n \/CONDITION=(X711, TEST=(PREFIX EQ 711))\r\n \/CONDITION=(X811, TEST=(PREFIX EQ 811))\r\n \/CONDITION=(X911, TEST=(PREFIX EQ 911))\r\n \/CONDITION=(XPREFIX, TEST=(X211 OR X311 OR X411 OR X511 OR X611 OR X711 OR X811 OR X911))\r\n \/OMIT WHERE XPREFIX\r\n \/REPORT\r\n \/OUTFILE=us-phone-numbers.set\r\n \/PROCESS=RECORD\r\n \/FIELD=(PHONE_NUMBER=format_strings(\"%s-%s-%s\", AREACODE, PREFIX, STATIONCODE), TYPE=ASCII, POSITION=1, SEPARATOR=\"\\t\")\r\n\r\n<\/pre>\n<p><span style=\"text-decoration: underline;\"><strong>Run the Data Generation<\/strong><\/span><\/p>\n<p>Execute the .rcl file (RowGen job script) from the GUI&#8217;s Run options or on the command line (rowgen \/spec=scriptname.rcl).<\/p>\n<p>When run the output file contains values like these:<\/p>\n<pre> 954-642-3959\r\n 605-956-7516\r\n 609-555-5274\r\n 234-804-6362\r\n 509-926-1103\r\n 919-659-6360\r\n 253-213-4263\r\n 319-982-0523<\/pre>\n<p>Follow\u00a0are screen captures of how an omit condition can be applied to remove specific area codes from the output data.<\/p>\n<p><strong>Figure 1.<\/strong><\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 577.00px; height: 481.00px;\"><img decoding=\"async\" style=\"width: 577.00px; height: 481.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-12.jpg\" alt=\"\" \/><\/span><\/p>\n<p><strong>Figure 2.<\/strong><\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 624.00px; height: 440.00px;\"><a title=\"Test Phone Number Generation: Using RowGen's Compound Data Value Wizard .jpg\" href=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-13.jpg\" rel=\"prettyPhoto\"><img decoding=\"async\" style=\"width: 624.00px; height: 440.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/t_Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-.jpg\" alt=\"\" \/><\/a><\/span><\/p>\n<p><strong>Figure 3.<\/strong><\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 529.00px; height: 448.00px;\"><img decoding=\"async\" style=\"width: 529.00px; height: 448.00px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-14.jpg\" alt=\"\" \/><\/span><\/p>\n<p>Here is the final representation of the .rcl code in the\u00a0IRI Workbench <a href=\"http:\/\/www.iri.com\/products\/workbench\/rowgen-gui\" target=\"_blank\" rel=\"noopener\">GUI for RowGen<\/a>, built on Eclipse\u2122:<\/p>\n<p><span style=\"overflow: hidden; display: inline-block; margin: 0.00px 0.00px; border: 0.00px solid #000000; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px); width: 624.00px; height: 398.67px;\"><a title=\"Test Phone Number Generation: Using RowGen's Compound Data Value Wizard .jpg\" href=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-15.jpg\" rel=\"prettyPhoto\"><img decoding=\"async\" style=\"width: 624.00px; height: 398.67px; margin-left: 0.00px; margin-top: 0.00px; transform: rotate(0.00rad) translateZ(0px); -webkit-transform: rotate(0.00rad) translateZ(0px);\" title=\"\" src=\"http:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/t_Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-1.jpg\" alt=\"\" \/><\/a><\/span><\/p>\n<p>Please feedback on this article below, or contact <a href=\"mailto:rowgen@iri.com\">rowgen@iri.com<\/a>\u00a0if you need help generating custom test data.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>One of the ways IRI RowGen\u00a0builds realistic test data\u00a0is through the formation and population of custom field values, such as phone numbers. In this article,\u00a0we explain how to use the Compound Data Value (CDV) wizard in the RowGen GUI\u00a0to build a set file containing real-looking,\u00a0US phone numbers based on the North American Numbering Plan (NANP).<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\" title=\"Test Phone Number Generation: Using RowGen&#8217;s Compound Data Value Wizard\">Read More<\/a><\/div>\n","protected":false},"author":53,"featured_media":7255,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[29],"tags":[482,745,89,221,749,748,747,751,190,752,750,757,88,756],"class_list":["post-7242","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-test-data","tag-composite-value","tag-compound-data-value-wizard","tag-database-test-data","tag-iri-workbench-gui","tag-nanp","tag-north-american-numbering-plan","tag-phone-number-generation","tag-random-generation-attributes","tag-realistic-test-data","tag-record-filtering","tag-set-file","tag-synthetic-phone-numbers","tag-test-data-2","tag-test-phone-numbers"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.4 (Yoast SEO v23.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Test Phone Number Generation: Using RowGen&#039;s Compound Data Value Wizard - IRI<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Test Phone Number Generation: Using RowGen&#039;s Compound Data Value Wizard\" \/>\n<meta property=\"og:description\" content=\"One of the ways IRI RowGen\u00a0builds realistic test data\u00a0is through the formation and population of custom field values, such as phone numbers. In this article,\u00a0we explain how to use the Compound Data Value (CDV) wizard in the RowGen GUI\u00a0to build a set file containing real-looking,\u00a0US phone numbers based on the North American Numbering Plan (NANP).Read More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2015-05-06T12:35:15+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-11-07T14:53:18+00:00\" \/>\n<meta name=\"author\" content=\"Chaitali Mitra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Chaitali Mitra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\"},\"author\":{\"name\":\"Chaitali Mitra\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf\"},\"headline\":\"Test Phone Number Generation: Using RowGen&#8217;s Compound Data Value Wizard\",\"datePublished\":\"2015-05-06T12:35:15+00:00\",\"dateModified\":\"2017-11-07T14:53:18+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\"},\"wordCount\":751,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg\",\"keywords\":[\"composite value\",\"Compound Data Value Wizard\",\"database test data\",\"IRI Workbench GUI\",\"NANP\",\"North American Numbering Plan\",\"phone number generation\",\"random generation attributes\",\"realistic test data\",\"record filtering\",\"set file\",\"synthetic phone numbers\",\"test data\",\"test phone numbers\"],\"articleSection\":[\"Test Data\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\",\"url\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\",\"name\":\"Test Phone Number Generation: Using RowGen's Compound Data Value Wizard - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg\",\"datePublished\":\"2015-05-06T12:35:15+00:00\",\"dateModified\":\"2017-11-07T14:53:18+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg\",\"width\":522,\"height\":498},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Test Phone Number Generation: Using RowGen&#8217;s Compound Data Value Wizard\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.iri.com\/blog\/#website\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf\",\"name\":\"Chaitali Mitra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g\",\"caption\":\"Chaitali Mitra\"},\"sameAs\":[\"http:\/\/www.iri.com\"],\"url\":\"https:\/\/www.iri.com\/blog\/author\/chaitalim\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Test Phone Number Generation: Using RowGen's Compound Data Value Wizard - IRI","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/","og_locale":"en_US","og_type":"article","og_title":"Test Phone Number Generation: Using RowGen's Compound Data Value Wizard","og_description":"One of the ways IRI RowGen\u00a0builds realistic test data\u00a0is through the formation and population of custom field values, such as phone numbers. In this article,\u00a0we explain how to use the Compound Data Value (CDV) wizard in the RowGen GUI\u00a0to build a set file containing real-looking,\u00a0US phone numbers based on the North American Numbering Plan (NANP).Read More","og_url":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/","og_site_name":"IRI","article_published_time":"2015-05-06T12:35:15+00:00","article_modified_time":"2017-11-07T14:53:18+00:00","author":"Chaitali Mitra","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Chaitali Mitra","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#article","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/"},"author":{"name":"Chaitali Mitra","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf"},"headline":"Test Phone Number Generation: Using RowGen&#8217;s Compound Data Value Wizard","datePublished":"2015-05-06T12:35:15+00:00","dateModified":"2017-11-07T14:53:18+00:00","mainEntityOfPage":{"@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/"},"wordCount":751,"commentCount":0,"publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg","keywords":["composite value","Compound Data Value Wizard","database test data","IRI Workbench GUI","NANP","North American Numbering Plan","phone number generation","random generation attributes","realistic test data","record filtering","set file","synthetic phone numbers","test data","test phone numbers"],"articleSection":["Test Data"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/","url":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/","name":"Test Phone Number Generation: Using RowGen's Compound Data Value Wizard - IRI","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage"},"image":{"@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg","datePublished":"2015-05-06T12:35:15+00:00","dateModified":"2017-11-07T14:53:18+00:00","breadcrumb":{"@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#primaryimage","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg","width":522,"height":498},{"@type":"BreadcrumbList","@id":"https:\/\/www.iri.com\/blog\/test-data\/test-phone-number-generation-using-rowgens-compound-data-value-wizard\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Test Phone Number Generation: Using RowGen&#8217;s Compound Data Value Wizard"}]},{"@type":"WebSite","@id":"https:\/\/www.iri.com\/blog\/#website","url":"https:\/\/www.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.iri.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/www.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/9bae14a309616863b027c2d56f532caf","name":"Chaitali Mitra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/95a11f3d0b709c00df3262bab0152f3a?s=96&d=blank&r=g","caption":"Chaitali Mitra"},"sameAs":["http:\/\/www.iri.com"],"url":"https:\/\/www.iri.com\/blog\/author\/chaitalim\/"}]}},"jetpack_featured_media_url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2015\/05\/Test-Phone-Number-Generation-Using-RowGens-Compound-Data-Value-Wizard-11.jpg","_links":{"self":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/7242"}],"collection":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/users\/53"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=7242"}],"version-history":[{"count":12,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/7242\/revisions"}],"predecessor-version":[{"id":11868,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/7242\/revisions\/11868"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media\/7255"}],"wp:attachment":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=7242"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=7242"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=7242"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}