// // time: Wed Apr 9 15:32:47 1997 // // version: 3.1.1 (format), 3.1.4 (DX Beta) // // // MODULE main // // comment: This visual program imports a simple table of data for a list of state names, and checks for duplicate values. Include is used to flag any state which had more than one line in the file, and a message is posted to the user of which states appeared in the file more than once. This would be useful for very large files. // workspace: width = 404, height = 607 // layout: snap = 0, width = 50, height = 50, align = NN // macro main( ) -> ( ) { // // node ImportSpreadsheet[2]: x = 30, y = 13, inputs = 10, label = ImportSpreadsheet // input[1]: defaulting = 0, visible = 1, type = 32, value = "salesdata.data" // input[9]: defaulting = 1, visible = 0, type = 1, value = 1 // input[10]: defaulting = 0, visible = 0, type = 1, value = 1 // main_ImportSpreadsheet_2_out_1, main_ImportSpreadsheet_2_out_2 = ImportSpreadsheet( main_ImportSpreadsheet_2_in_1, main_ImportSpreadsheet_2_in_2, main_ImportSpreadsheet_2_in_3, main_ImportSpreadsheet_2_in_4, main_ImportSpreadsheet_2_in_5, main_ImportSpreadsheet_2_in_6, main_ImportSpreadsheet_2_in_7, main_ImportSpreadsheet_2_in_8, main_ImportSpreadsheet_2_in_9, main_ImportSpreadsheet_2_in_10 ) [instance: 2, cache: 1]; // // node Categorize[1]: x = 40, y = 103, inputs = 2, label = Categorize // input[2]: defaulting = 0, visible = 1, type = 16777248, value = {"state"} // main_Categorize_1_out_1 = Categorize( main_ImportSpreadsheet_2_out_1, main_Categorize_1_in_2 ) [instance: 1, cache: 1]; // // node CategoryStatistics[2]: x = 31, y = 202, inputs = 5, label = CategoryStatistics // input[2]: defaulting = 0, visible = 1, type = 32, value = NULL // input[3]: defaulting = 0, visible = 1, type = 32, value = "state" // input[4]: defaulting = 0, visible = 1, type = 32, value = "sales" // main_CategoryStatistics_2_out_1 = CategoryStatistics( main_Categorize_1_out_1, main_CategoryStatistics_2_in_2, main_CategoryStatistics_2_in_3, main_CategoryStatistics_2_in_4, main_CategoryStatistics_2_in_5 ) [instance: 2, cache: 1]; // // node Include[2]: x = 25, y = 299, inputs = 6, label = Include // input[2]: defaulting = 0, visible = 1, type = 5, value = 1.5 // input[5]: defaulting = 1, visible = 1, type = 3, value = NULL // input[6]: defaulting = 0, visible = 1, type = 3, value = 1 // main_Include_2_out_1 = Include( main_CategoryStatistics_2_out_1, main_Include_2_in_2, main_Include_2_in_3, main_Include_2_in_4, main_Include_2_in_5, main_Include_2_in_6 ) [instance: 2, cache: 1]; // // node Lookup[1]: x = 66, y = 424, inputs = 7, label = Lookup // input[2]: defaulting = 0, visible = 1, type = 32, value = "state lookup" // input[3]: defaulting = 0, visible = 1, type = 32, value = "positions" // input[4]: visible = 1 // input[5]: visible = 1 // input[6]: defaulting = 0, visible = 1, type = 32, value = "data" // input[7]: visible = 1 // main_Lookup_1_out_1 = Lookup( main_Include_2_out_1, main_Lookup_1_in_2, main_Lookup_1_in_3, main_Lookup_1_in_4, main_Lookup_1_in_5, main_Lookup_1_in_6, main_Lookup_1_in_7 ) [instance: 1, cache: 1]; // // node Extract[22]: x = 129, y = 522, inputs = 2, label = Extract // main_Extract_22_out_1 = Extract( main_Lookup_1_out_1, main_Extract_22_in_2 ) [instance: 22, cache: 1]; // // node Format[1]: x = 220, y = 543, inputs = 3, label = Format // input[1]: defaulting = 0, visible = 1, type = 32, value = "duplicate state name: %s" // main_Format_1_out_1 = Format( main_Format_1_in_1, main_Extract_22_out_1, main_Format_1_in_3 ) [instance: 1, cache: 1]; // // node Message[1]: x = 332, y = 545, inputs = 3, label = Message // input[3]: defaulting = 0, visible = 1, type = 3, value = 1 // Message( main_Format_1_out_1, main_Message_1_in_2, main_Message_1_in_3 ) [instance: 1, cache: 1]; // network: end of macro body } main_ImportSpreadsheet_2_in_1 = "salesdata.data"; main_ImportSpreadsheet_2_in_2 = NULL; main_ImportSpreadsheet_2_in_3 = NULL; main_ImportSpreadsheet_2_in_4 = NULL; main_ImportSpreadsheet_2_in_5 = NULL; main_ImportSpreadsheet_2_in_6 = NULL; main_ImportSpreadsheet_2_in_7 = NULL; main_ImportSpreadsheet_2_in_8 = NULL; main_ImportSpreadsheet_2_in_9 = NULL; main_ImportSpreadsheet_2_in_10 = 1; main_ImportSpreadsheet_2_out_1 = NULL; main_Categorize_1_in_2 = {"state"}; main_Categorize_1_out_1 = NULL; main_CategoryStatistics_2_in_2 = NULL; main_CategoryStatistics_2_in_3 = "state"; main_CategoryStatistics_2_in_4 = "sales"; main_CategoryStatistics_2_in_5 = NULL; main_CategoryStatistics_2_out_1 = NULL; main_Include_2_in_2 = 1.5; main_Include_2_in_3 = NULL; main_Include_2_in_4 = NULL; main_Include_2_in_5 = NULL; main_Include_2_in_6 = 1; main_Include_2_out_1 = NULL; main_Lookup_1_in_2 = "state lookup"; main_Lookup_1_in_3 = "positions"; main_Lookup_1_in_4 = NULL; main_Lookup_1_in_5 = NULL; main_Lookup_1_in_6 = "data"; main_Lookup_1_in_7 = NULL; main_Lookup_1_out_1 = NULL; main_Extract_22_in_2 = NULL; main_Extract_22_out_1 = NULL; main_Format_1_in_1 = "duplicate state name: %s"; main_Format_1_in_3 = NULL; main_Format_1_out_1 = NULL; main_Message_1_in_2 = NULL; main_Message_1_in_3 = 1; Executive("product version 3 1 4"); $sync main();