THE WELCH COMPANY
440 Davis Court #1602
San Francisco, CA 94111-2496
415 781 5700
rodwelch@pacbell.net


S U M M A R Y


DIARY: January 20, 2004 10:45 AM Tuesday; Rod Welch

SDS function to replicate subject accounts for Control Fields.

1...Summary/Objective
2...Multi-tasking Developed for Replication Applied to SDS Records
3...Replication Applied to SDS Records for Control Fields Headlines Text
4...Control Fields Headlines Text Applied Replication to SDS Records
5...000008 Profile Assign F3 and Shift F3 to Replicate Subjects in SDS
6...Enter Double Click Capture and Enter Content of Para
7...F3 Diary Summary Multi-task Replicate Control Field Subjects Para
8...Replicate Control Field Subjects Para Multi-task F3 Diary Summary
9...F3 Replicate Control Field Subjects Para Multi-task Diary Summary
10...000005 Macro 96 Modify Call New Op Replicate Control Field Subjects
11...000001 Macro 30 Modify to Test Shift F3 to Call Replicate Subjects
12...007003 F3 Capture Control Field Subject Accounts Entered by Shift F3
13...007003 F3 Capture Headline for Description of Subject Index Account
....Subjects Capture Headline in SDS Record for Account Description
....Headline Capture for Account Description in Subject Index
....Headlines Place in Transfer File for Use in Subject Index
....Subject Accounts in Control Field Replicate to Another Record
14...Para F3 Capture for Replication with Shift F3
15...F3 Para Capture for Replication with Shift F3
16...Control Field Capture for Replication to Another Record
17...Shift F3 Subjects Replicated in Control Field from Another Record
....Transfer Control Field Lines for Replication
....Remove Default Control Field Line Position to Conform Descriptions
18...Shift F3 Para Replicated from Another Record Citations Updated
19...Paragraph Replicated and Citations Updated with Shift F3
20...Replicate with Shift F3 or Enter or Double Click Line Number Field
....Para Transfer Shift F3 Enter into Target SDS Record
....Forward Links Shifted and Justified


..............
Click here to comment!

CONTACTS 

SUBJECTS
F3 Subject Index Capture Account Description to Replicate in Other Stru
Subject Index Capture Account Description to Replicate in Other Structu
Replicate Subjects Multiple Paths Cross-reference Subjects Multiple D
Tasks Integrate Consolidate Reduce Keystrokes Fast Easy Learn Use
Consolidate Commands Functions Productivity Integrate So Less to Reme
Multi-task Macro 96 F3 Replicate Control Field Subjects to Follow Up
Time Save Money Integrate Consolidate Functions So Less to Remember i

1609 -
1609 -    ..
1610 - Summary/Objective
1611 -
161101 - Follow up ref SDS 7 0000, ref SDS 5 0000.
161102 -
161103 - Improved context management using subjects, Control Fields and
161104 - headlines.  Added multi-tasking to provide new functions based on
161105 - situational awareness for replication to construct, cross-reference
161106 - and apply multiple views.  A complementary function replicates
161107 - ordinary text and develops a new method to transfer links between
161108 - records, primarily for connecting the dots of cause and effect with
161109 - common explanations of links for consistent understanding. ref SDS 0
161110 - PH3F  Expanded enter and double clicking to execute new functions.
161111 - ref SDS 0 JV5L  Improvements today build on prior work to save time
161112 - and money by reducing keystrokes and decisions to make good management
161113 - fast and easy rather than a lot of hard work that is beyond reach
161114 - using popular technology. ref SDS 0 4U9L
161115 -
161116 -      [On 040214 explained purpose and evaluated productivity gains
161117 -      from the new feature to replicate text and update links between
161118 -      SDS records. ref SDS 9 0001
161120 -       ..
161121 -      [On 040624 Gary suggested that only forward links need to be
161122 -      automatically formatted by shifting the margin and justifying the
161123 -      text. ref SDS 13 9T6N
161124 -
161126 -  ..
1612 -
1613 -
1614 - Planning
1615 -
161501 - Multi-tasking Developed for Replication Applied to SDS Records
161502 - Replication Applied to SDS Records for Control Fields Headlines Text
161503 - Control Fields Headlines Text Applied Replication to SDS Records
161504 -
161505 - Follow up ref SDS 5 8M7L, ref SDS 3 0001.
161506 -
161507 - Continued work showing calculations on 000824 of reducing keystrokes
161508 - and time by consolidating and integrating tasks. ref SDS 1 0001  On
161509 - 031207 created a method to enter multiple accounts from Subject Index
161510 - into a Control Field, ref SDS 7 0001, that complemented work on 030809
161511 - to replace cut and paste for replicating subject accounts for
161512 - cross-referencing in the Subject Index. ref SDS 5 8M7L  Today, will
161513 - extend this level of support to SDS records.  Background and rationale
161514 - are also reported on 030809. ref SDS 5 RA4L
161515 -
161516 -      [On 040214 reviewed productivity gains from reducing keystrokes
161517 -      for replicating text and updating links between SDS records.
161518 -      ref SDS 9 6H3L
161520 -  ..
161521 - On 030809 F3 and Shift F3 were adopted for the Subject Index.
161522 - ref SDS 5 0001
161524 -  ..
161525 - Would like to keep these assignments in SDS records in order to have a
161526 - consistent way to perform comparable tasks.
161528 -  ..
161529 - Currently F3 in SDS records calls a diary summary and Shift F3 is a
161530 - return to mark 3 created initially by Alt F3.
161532 -  ..
161533 - F3 can be used for multi-tasking in SDS records, by calling new
161534 - functionality to...
161535 -
161536 -    1.  Replicate Subject accounts between SDS records -- F3 captures a
161537 -        Control Field to replicate the subjects in another record
161538 -        record by storing accounts in a temporary transfer file, using
161539 -        the design developed for replicating descriptions in the
161540 -        Subject Index on 030809. ref SDS 5 RA50
161542 -         ..
161543 -        F3 executes the new function used with the cursor on a Control
161544 -        Field line and between Subject account code levels or at the
161545 -        end of the subject field, including on the Control Field
161546 -        description for "Subject/File." ref SDS 0 PH5V  F3 calls macro
161547 -        96 for the diary summary. ref SDS 0 823K  Created a new macro
161548 -        936 to set switches for multi-tasking F3, ref SDS 0 QO5O, so
161549 -        the User can control selection of different functions based on
161550 -        situational awareness. ref SDS 0 0T45  Macro file 007003 is a
161551 -        new processor that does the actual work of extracting and
161552 -        storing control field lines in a temporary transfer file.
161553 -        ref SDS 0 HF6M
161555 -         ..
161556 -        Enter and double click are upgraded for an alternate way to
161557 -        execute these new functions. ref SDS 0 JV5L
161559 -         ..
161560 -        Shift F3 positioned as described for F3, ref SDS 0 QN3J, moves
161561 -        accounts stored in the temporary transfer file by F3 in another
161562 -        record, into the current record at the bottom of the current
161563 -        Control Field. ref SDS 0 MZ8L
161564 -
161565 -           [On 040216 Gary reports problem with this function; that was
161566 -           then corrected. ref SDS 8 WP7N
161568 -            ..
161569 -           [On 040305 improved function to conform descriptions for
161570 -           subjects in a Control Field to descriptions in the Subject
161571 -           Index. ref SDS 11 5U42
161573 -         ..
161574 -    2.  Capture subject descriptions from a headline that can be used
161575 -        to describe an account in the Subject Index by putting the
161576 -        stuff in file stufq9. ref SDS 0 783O
161578 -         ..
161579 -    3.  Capture para of text for replication in another record, needed
161580 -        primarily to apply common descriptions for links.  Complements
161581 -        cut and paste by adding intelligence to automatically update
161582 -        citations. ref SDS 0 2M3G  An interesting design emerged for
161583 -        creating links without opening source records and executing SDS
161584 -        standard code for linking, which reduces the burden on memory.
161585 -        ref SDS 0 KP5O
161586 -
161587 -           [On 040217 develop plans for reducing time required to
161588 -           connect the dots of cause and effect. ref SDS 9 WU5J
161590 -  ..
161591 - Shift F3 can multi-task based on the same criteria for entering
161592 - subject accounts into another Control Field. ref SDS 0 MZ8L
161593 -
161594 -
161595 -
161596 -
1616 -

SUBJECTS
Para Capture and Enter Content Update Citations and References Enter

1803 -
180401 -  ..
180402 - 000008  Profile Assign F3 and Shift F3 to Replicate Subjects in SDS
180403 -
180404 - Line 380, ref OF 5 6314, -entry 1531 in 000008 about 120 lines below
180405 -
180406 -    pf3 macro 96............................ ref SDS 0 823K
180407 -
180408 -        Modify macro 96 today to call an alternate macro file, if user
180409 -        wants to capture a set of Control Field subjects to temporary
180410 -        file stufqc1
180412 -     ..
180413 -    ps3 macro 30............................. ref SDS 0 MZ8L
180414 -
180415 -        Modify macro 30 to enter Subject accounts in stufqc1 to
180416 -        cross-reference subjects in another record,
180417 -
180419 -  ..
180420 - Enter Double Click Capture and Enter Content of Para
180421 -
180422 - Line 1340, ref OF 5 KX5L, -label clfE in 000008
180423 -
180424 -    -label clfE
180425 -    -if @47 = 1 -goto nrepS
180426 -    setcnt 119 999
180427 -    macro 936................................ ref SDS 0 0T45
180428 -    setcnt 119 0
180429 -    -if @0 = 0 -goto nrepS................... ref SDS 0 NU5L
180430 -
180431 -        Configure double click and Enter to process the new macro file
180432 -        007003 that complements using F3 and Shift F3 for executing the
180433 -        new feature of capturing and entering content from the text of
180434 -        a record.  setcnt 119 999 is a flag telling macro 936 to
180435 -        evaluate for an operation to enter content, rather than to
180436 -        place content into a transfer file.  macro 936 evaluates where
180437 -        double click and enter are used. ref SDS 0 0T45  When 0 = 1
180438 -        macro 936 did not find conditions for replication, ref SDS 0
180439 -        PH5V, and so macro file 007003 is not called; control passes to
180440 -        run the rest of the code for macro 136.
180442 -     ..
180443 -    -if @98 < 4 -goto 0070031................ ref SDS 0 NU4O
180444 -
180445 -        Counter 98 is called in macro 936 using setcur command; if
180446 -        Enter or double click occurred within 1st 4 columns of line
180447 -        number field, the user is calling the code in macro file 007003
180448 -        to capture a paragraph and its link references.
180450 -     ..
180451 -    -if @98 > 7 -goto nrepS.................. ref SDS 0 NU5L
180452 -
180453 -        User pressed Enter or double clicked beyond the line number
180454 -        field, and so the code executes the rest of the normal
180455 -        operations for Enter and double clicking, rather than any
180456 -        replication operations.
180457 -
180459 -     ..
180460 -    @c:\sd\03\007003 #2....................... ref SDS 0 NW4F
180461 -    -exit
180462 -
180463 -        User pressed Enter or double clicked between the 4th and the
180464 -        last column of the line number field and this means the user
180465 -        wants to enter content captured with macro F3 in the line
180466 -        number field and placed in the transfer file, and update links
180467 -        at the cursor location by calling the 2nd option in macro file
180468 -        007003, which is also supported by using Shift F3 with the
180469 -        cursor anywhere in the line number field. ref SDS 0 MZ8L
180470 -
180472 -     ..
180473 -    -label 0070031............................. ref SDS 0 JV5L
180474 -    @c:\sd\03\007003........................... ref SDS 0 QE5J
180475 -    -if @121 = 4111 loc_cur @222 @221
180476 -    -exit
180477 -
180478 -        Per above, user has pressed Enter or double clicked in the 1st
180479 -        4 columns of the line number field in the narrative section of
180480 -        the record, and so capture a paragraph in the transfer file for
180481 -        replication to another location in the record or to another
180482 -        recod.  -if @121 = 4111 loc_cur @222 @221 occurs only when a
180483 -        double click is used to execute the function, established by
180484 -        setcnt 121 4111 set in macro 230 -label m1361x, ref OF 3 1896,
180485 -        and setcura 221 0 is also set in macro 230, ref OF 3 4473,
180486 -
180487 -
180488 -
180490 -  ..
180491 - Line 1370, ref OF 5 OW9F, -label nrepS in 000008
180492 -
180493 -    -label nrepS............................. ref SDS 0 JV5L
180494 -    getscr 1
180495 -    setcnt 0 0
180496 -    setlen 98 0
180497 -    getgbl 257 257
180498 -
180499 -        This means Enter and double click did not occur in a situation
180500 -        that calls for running replication ops in 007003, and so the
180501 -        normal code for Enter and double click continues to execute.
180502 -        Added getscr 1 to restore initial cursor position; rest of
180503 -        code is unchanged.
180504 -
180505 -
180506 -
180507 -
180508 -
180509 -
1806 -

SUBJECTS
F03 Diary and Replication Multi-task
Replicate F3 Integrates Commands for Context Management and Connectin
Para Capture and Enter Content Update Citations and References Enter

2005 -
200601 -  ..
200602 - F3  Diary Summary Multi-task Replicate Control Field Subjects Para
200603 - Replicate Control Field Subjects Para Multi-task F3 Diary Summary
200604 - F3 Replicate Control Field Subjects Para Multi-task Diary Summary
200605 - 000005  Macro 96 Modify Call New Op Replicate Control Field Subjects
200606 -
200607 - Line 110, ref OF 4 1386, -entry 935 in 000008 about 70 lines below
200608 -
200609 -    macro 936................................. ref SDS 0 0T45
200610 -
200611 -        New call to new macro for evaluating when F3 is pressed.
200612 -
200613 -    -if @0 = 1 -goto cdsop3................... ref SDS 0 M97O
200614 -    @c:\sd\03\007003.......................... ref SDS 0 654G
200615 -    -exit
200616 -
200617 -        Macro 936 new processor to multi-task F3 -- evaluate if User
200618 -        wants to capture control field lines to replicate subjects in
200619 -        another record, or to capture headlines to describe an account
200620 -        in the Subject Index, or to capture a paragraph of text to
200621 -        replicate at another location in the same record, or in another
200622 -        record, used for creating uniform descriptions of forward
200623 -        links.
200625 -     ..
200626 -    -label cdsop3
200627 -
200628 -        ...continue normal code for F3 diary summary.
200629 -
200630 -
200632 -  ..
200633 - Line 150, ref OF 4 4I5N, -entry 936 in 000005
200634 -
200635 -    -entry 936
200636 -    macro 22
200637 -    errorcnt 0 0
200638 -    of 0
200639 -
200640 -        Save location then offset screen to evaluae when F3 is used on
200641 -        a Control Field line.
200643 -     ..
200644 -    setcur 98 0
200645 -    chrcnt 2 0
200646 -    loc_cur 0 3
200647 -    chrcnt 3 0
200649 -     ..
200650 -    -if @98 < 8 -if @2 != 48 setcnt 0 4
200651 -
200652 -        If cursor started in line number field and 1st char is greater
200653 -        than 0, set flag to capture para to replicate text.
200655 -     ..
200656 -    -if @98 < 8 -if @2 = 48 -if @3 > 51 setcnt 0 4
200657 -
200658 -        If cursor started in line number field and 1st two char
200659 -        identify a line number greater than 3, set flag to capture para
200660 -        to replicate text.
200662 -     ..
200663 -    -if @98 > 53 -if @2 = 32 -if @3 = 32 setcnt 0 2
200664 -
200665 -        If cursor started beyond subject section of Control Field, and
200666 -        if chrcnt 2 shows F3 pressed with cursor on Control Field line,
200667 -        and between subject accounts based on chrcnt 3, then F3 was
200668 -        pressed in Subject field and between accounts, so set flag to
200669 -        put all lines in the Control field in a transfer file to
200670 -        replicate the subjects in another record. ref SDS 0 0T7D
200672 -     ..
200673 -    loc_cur 0 7
200674 -    chrcnt 4 0
200675 -    -if @0 != 4 -if @3 = 106 setcnt 0 3
200677 -         ..
200678 -        If there is a "j" on col 7, this means the user wants to
200679 -        capture headlines for replication in the Subject Index to
200680 -        describe an account, unless F3 was pressed in the line number
200681 -        field, in which case use the standard function to capture the
200682 -        paragraph for replication to another record.
200683 -
200684 -           [On 040525 made a change adding the conditional for 0 = 4 so
200685 -           that if F3 is pressed in the line number field, it will
200686 -           capture a headline as a para for replication, rather than
200687 -           descriptions for accounts in the subject index. ref SDS 12
200688 -           WH68
200690 -     ..
200691 -    z 15 26
200692 -    -if @0 = 0 fr /Milg Emply/
200693 -    -if @0 = 0 setcnt 0 2
200694 -    -exit
200695 -
200696 -        If user pressed F3 or Shift F3 with the cursor on the
200697 -        description line for the Control Fields, set flag to replicate
200698 -        subjects for use in another record.  This code means that if 0
200699 -        = 1, then none of the conditions are met for a replication
200700 -        operation, and so the code should execute normal default
200701 -        operations.  An example, is calling macro 936 in macro 136 for
200702 -        Enter and double clicking, per above. ref SDS 0 JV5L
200703 -
200704 -
200705 -
200706 -
200707 -
2008 -

SUBJECTS
Shift F3 Multi-task F3 Replicate Control Field Subjects to Follow Up
Shift F3 Replicate Integrates Commands for Context Management and Con

2104 -
210501 -  ..
210502 - 000001  Macro 30 Modify to Test Shift F3 to Call Replicate Subjects
210503 -
210504 - Line 2060, ref OF 3 SP6N, -entry 30 in 000001
210505 -
210506 -    -entry 30
210507 -    119 999
210508 -    macro 936
210509 -    119 0
210510 -    -if @0 = 1 -goto mrk3r
210511 -    @c:\sd\03\007003 #2......................... ref SDS 0 NW4F
210513 -     ..
210514 -    errormsg Subjects replicated to this Control Field
210515 -    -label mrk3r
210516 -     macro 22
210517 -    macro 11
210518 -
210519 -        Macro 30 is return to mark 3, used for cut and paste, when Alt
210520 -        F3 clears cut file, and used more often to restore the location
210521 -        after entering a doc log entry in an SDS record, after calling
210522 -        F1 F5 to create a doc log format.  Macro 936 is a new op in
210523 -        000005, per above, ref SDS 0 823K,
210524 -
210525 -
210526 -
210527 -
210528 -
2106 -

SUBJECTS
F3 and Shift F3 Replicate Integrates Thousands of Commands for 30 Major

2203 -
220401 -  ..
220402 - 007003  F3 Capture Control Field Subject Accounts Entered by Shift F3
220403 - 007003  F3 Capture Headline for Description of Subject Index Account
220404 -
220405 - Follow up ref SDS 5 654G.
220406 -
220407 - Perform similar function developed on 030807 for the Subject Index by
220408 - capturing in an SDS record subject account codes for replication in
220409 - another Control Field in the same record or in another record.
220411 -  ..
220412 - Line 30, ref OF 1 S64O, in 007003
220413 -
220414 -    -goto captr................................. ref SDS 0 783O
220415 -
220416 -        This is the 1st option available in 007003 from pressing F3 to
220417 -        either capture a Control Field for replicating subjects in the
220418 -        Control Field of another record, or capture headlines for
220419 -        account descriptions in the Subject Index, or capture a
220420 -        paragraph of text where the cursor is located, and is called
220421 -        from macro 96 in 000005, per above, ref SDS 0 823K; or, the
220422 -        function can be called when the User presses Enter or double
220423 -        clicks, per above, within the 1st 4 columns of the line number
220424 -        field. ref SDS 0 NU5K
220425 -
220427 -     ..
220428 -    -goto entr.................................. ref SDS 0 Q55O
220429 -
220430 -         F3 call to capture descriptions for current account, and call
220431 -         Shift F3 to enter descriptions at current line.
220432 -
220433 -
220435 -     ..
220436 -    Subjects Capture Headline in SDS Record for Account Description
220437 -    Headline Capture for Account Description in Subject Index
220438 -
220439 -
220440 - Line 30, ref OF 1 VC5L, -label captr in 007003
220441 -
220442 -        [On 040217 followed up. ref SDS 9 U179
220443 -
220444 -    -label captr
220445 -    -if @0 = 2 -goto cntrlF................... ref SDS 0 HF6M
220446 -
220447 -        If 0 = 2 this is capturing Control Field subject account lines,
220448 -        otherwise capture headline for descriptions in Subject Index.
220449 -
220450 -
220452 -     ..
220453 -    Headlines Place in Transfer File for Use in Subject Index
220454 -
220455 -    markcur 13
220456 -    setcnt 28 937
220457 -    macro 541
220458 -    setcnt 28 0
220459 -
220460 -        Move cursor to left margin where headline description begins
220461 -        by calling macro 541 with flag set to exit after left margin
220462 -        is located.
220464 -     ..
220465 -    immed /
220466 -    z 7 7
220467 -    l-/ /
220468 -    up
220469 -    loc_cur 3 0
220470 -
220471 -        Jump cursor line to top of screen to process all headlines as
220472 -        potential subject descriptions.  Place cursor on current line
220473 -        at left margin of headline.
220474 -
220475 -
220477 -  ..
220478 - Line 90, ref OF 1 T169, -label lpj2 in 007003
220479 -
220480 -    -label lpj2
220481 -    savescr 8
220482 -    macro 1188
220483 -    e stufq9
220484 -    addcnt 119 1
220485 -    -if @119 > 1 -goto ehdtf
220486 -    setcnt 86 1
220487 -    top
220488 -    chrcnt 1 0
220489 -    -if @1 = 68 -goto trao
220490 -
220491 -        savescr 8 saves cursor for loop to process all headlines.
220492 -        macro 1188 reads full width of screen to capture current
220493 -        headline.  e stuqf9 opens transfer file for subject index
220494 -        descriptions.  addcnt 119 1 is just a simple switch to process
220495 -        the front end to set up stufq9 for processing.  Read first
220496 -        char on line 1 col 1, and -if @1 = 68 -goto trao means if
220497 -        there is a D it means the file exists, so skip initial setup.
220498 -
220500 -  ..
220501 - Line 140, ref OF 1 I04O, -label lpj2 in 007003 about 30 lines below
220502 -
220503 -    macro 3
220504 -    immed 3a
220505 -    top
220506 -    ins_text"Dr Directory"
220507 -    rel_cur 1 0
220508 -    ins_text"== ========="
220509 -    up
220510 -    -goto ehdtf
220511 -
220512 -        File stufq9 is not already configued for a subject account
220513 -        description transfer file, so set it up with standard format,
220514 -        then -goto ehdtf
220515 -
220516 -
220518 -     ..
220519 -    Subject Accounts in Control Field Replicate to Another Record
220520 -
220521 -
220522 - Line 30, ref OF 1 E135, -label cntrlF in 007003
220523 -
220524 -    -label cntrlF
220525 -    tl 0
220526 -    save stufq8
220527 -
220528 -        of 0 move index file, sndx, in standard screen position; move
220529 -        cursor to column 1 and then find the beginning of descriptions
220530 -        column.  macro 22 saves the location to restore at the end of
220531 -        the process so that if the user wants to work at the next
220532 -        level, this task is pre-positioned to do that task, which is a
220533 -        common occurrance.  save the current index to the disk to
220534 -        restore after using the current index file for saving
220535 -        descriptions in a separate file on the disk ready for
220536 -        replication.
220537 -
220538 -
220539 -
220540 -
220542 -  ..
220543 - Para F3 Capture for Replication with Shift F3
220544 - F3 Para Capture for Replication with Shift F3
220545 -
220546 - This new concept complements cut and paste so there is a faster method
220547 - to capture a paragraph of text and transfer it between records, and,
220548 - also, update links in the paragraph to use a specification for
220549 - citations in the target record.  From 10 to 50 keystrokes are
220550 - eliminated, which reduces the time and emotional burden that prevents
220551 - people from using good management, per above. ref SDS 0 PH3F
220553 -  ..
220554 - When F3 is called all of the text above and below a paragraph which
220555 - can be a single sentence or multiple lines, is deleted.  A loop is
220556 - developed that processes all links in the paragraph by putting a copy
220557 - of the line from the Reference field for each link in the target text
220558 - paragraph to the bottom of the paragraph.  If the link is internal,
220559 - and so there is no line in the Reference field for the link, then a
220560 - line is contructed with a special reference number that can be used to
220561 - construct the actual link in the target record.  The content is then
220562 - saved to a temporary transfer file for replication to other files
220563 - using Shift F3, per below. ref SDS 0 KP5O
220565 -  ..
220566 - After saving the file to the disk, the original contents of the record
220567 - is read back into the file, and the replication lines are deleted,
220568 - leaving only the actual content. The initial position is restored, so
220569 - that the entire process is transparent to the User.  All the user sees
220570 - is a notice that content has been stored.
220572 -  ..
220573 - Line 230, ref OF 1 PJ4N, -label up1 in 007003
220574 -
220575 -
220576 -    -if @117 = 1 -goto cfcap
220577 -    -label up1
220578 -
220579 -         [On 040723 for internal citations added macro 911 call to
220580 -         transfer current user ID from global to local counters.
220581 -         ref SDS 14 XA9N
220582 -
220583 -
220584 -
220586 -  ..
220587 - Control Field Capture for Replication to Another Record
220588 -
220589 - Line 320, ref OF 1 0608, -label cfcap in 007003
220590 -
220591 -    -label cfcap
220592 -    z 16 25
220593 -    up
220594 -    l-/Milg Emply/
220595 -    immed dd
220596 -    top
220597 -    immed r
220598 -    immed dd
220599 -    z 3 3
220600 -    nb
220601 -    down
220602 -    rel_cur 1 0
220603 -    immed 9999d
220604 -    top
220605 -    errorcnt 0 0
220606 -    loc_cur 3 21
220607 -
220608 -        macro 936 determined the user pressed F3 with cursor on a
220609 -        Control Field line in position to identify User wants capture
220610 -        the subjects for replication, per above. ref SDS 0 QO5O
220612 -         ..
220613 -        This code finds the top of the Control Field, deletes all the
220614 -        lines above; then uses nb to get to the bottom and deletes all
220615 -        the lines below.  Then saves the remainder; then reads the
220616 -        actual record back and deletes the duplicate control field
220617 -        lines at the top.
220618 -
220619 -
220620 -
220621 -
220622 -
220623 -
220624 -
220625 -
220626 -
220627 -
220628 -
220629 -
220630 -
220631 -
2207 -

SUBJECTS
F3 Replicate Integrates Thousands of Commands for 30 Major Tasks into a

2303 -
230401 -  ..
230402 - Shift F3 Subjects Replicated in Control Field from Another Record
230403 -
230404 - Follow up ref SDS 5 Q55O.
230406 -  ..
230407 - Line 140, ref OF 1 Q65G, -label entr in 007003
230408 -
230409 -    -label entr
230410 -    tl 0
230411 -    -if @0 = 2 setcnt 117 1
230412 -    -if @0 = 4 setcnt 117 2
230413 -    -if @117 = 1 -goto cfeaft..................... ref SDS 0 JG4M
230414 -
230415 -        Turn titles off just for fun; counter 0 is set by macro 963
230416 -        called by macro 96 when F3 is executed and by macro 1361 when
230417 -        a double click occurs.
230418 -
230419 -
230421 -     ..
230422 -    Transfer Control Field Lines for Replication
230423 -
230424 -
230425 - Line 1090, ref OF 1 HQ5J, -label cfeaft in 007003
230426 -
230427 -    -label cfeaft................................... ref SDS 0 GH9I
230428 -    immed /
230429 -    z 3 3
230430 -    nb
230431 -    down
230432 -    g stufqc1
230433 -    loc_cur 4 24
230434 -    chrcnt 1 0
230435 -    -if @1 != 63 -goto error......................
230436 -
230437 -        Shift F3 has been entered on a Control Field line.  The
230438 -        objective is to append Control Field lines in the transfer file
230439 -        created typically in another record with F3, per above,
230440 -        ref SDS 0 HF6M, to the end of the current Control Field.  zone
230441 -        3 3 and nb jumps to the bottom of the Control Field.  down
230442 -        places the last Control Field line on the current line, so that
230443 -        the get command will put the lines immediately below the last
230444 -        line in the current Control Field.  g stufqc1 reads in the
230445 -        data.
230447 -         ..
230448 -        loc_cur 4 24 puts the cursor on the first line where a Control
230449 -        Field from the transfer file should occur, if anything was read
230450 -        into the record.  The code for F3 that captures Control Field
230451 -        lines for replication puts a "?" symbol in column 24,
230452 -        ref OF 1 SK6I, so if there is not a "?" then it means nothing
230453 -        was read, and the process ends with a message to the user.
230454 -
230456 -  ..
230457 - Line 1120, ref OF 1 IM7G, -label cfeaft in 007003
230458 -
230459 -    loc_cur 3 21
230460 -    setcnt 86 1
230461 -    setcnt 80 1000
230462 -    setcnt 81 14
230463 -    macro 1182
230464 -    setcnt 80 0
230465 -
230466 -        loc_cur 3 21 puts cursor on beginning of User Control Field in
230467 -        the current record to transfer the User ID and Billing fields
230468 -        to the new lines appended.  setcnt 86 1 starts char read with
230469 -        counter 1; setcnt 80 1000 and setcnt 81 14 limit char read to
230470 -        14 char which extends from the User to the end of the billing
230471 -        field; macro 1182 reads the data.  setcnt 80 0 turns off
230472 -        control that limits macro 1182 from reading a fixed number of
230473 -        char.
230475 -  ..
230476 - Line 1130, ref OF 1 AN8M, -label cfeaft in 007003 about 50 lines below
230477 -
230478 -    markcur 5
230479 -    e c:\sd\03\007003
230480 -    line                                                       && *%df
230481 -    loc_cur 4 18
230482 -    setcnt 86 1
230483 -    macro 1181
230484 -
230485 -        markcur 5 identifies the current file to come back, e
230486 -        c:\sd\03\007003 opens the processor to load the change command;
230487 -        loc_cur 4 18 puts the cursor at the beginning of the change
230488 -        command; setcnt 81 1 and macro 1181 read in the spec for the
230489 -        User and Billing fields to the change command.
230490 -
230492 -  ..
230493 - Line 1150, ref OF 1 UR4J, -label cfeaft in 007003 about 60 lines below
230494 -
230495 -    ecur 5
230496 -    z 21 33
230497 -    *%df
230498 -    c !000?x 0 000xx!             !100 1
230500 -         ..
230501 -        ecur 5 returns to target file; z 21 23 zones for the change
230502 -        command to operation on the User and Billing fields; then the
230503 -        change command is executed to replicate the original User ID
230504 -        and Billing ID from the original Control Field lines into the
230505 -        new lines read in from the transfer file.
230506 -
230508 -     ..
230509 -    Remove Default Control Field Line Position to Conform Descriptions
230510 -
230511 -
230512 - Line 810, ref OF 1 XU6K, -label cfeaft in 007003 about 80 lines below
230513 -
230514 -    down 5
230515 -    loc_cur 8 0
230516 -    z 52 57
230517 -    setcnt 0 0
230518 -    fr /00%#/
230519 -    -if @0 = 0 immed d
230520 -    loc_cur 7 67
230521 -    macro 144
230522 -    macro 0
230523 -    errormsg  Subjects replicated
230524 -    -goto en2d
230525 -
230526 -        We could find the top of the Control Field and position the
230527 -        cursor at the right of Subject/File in every case, but in many
230528 -        cases this woul cause the user to lose orientation and
230529 -        situational awareness by jumping the screen significantly out
230530 -        of the last thing the user saw before the screen is changed.
230532 -         ..
230533 -        Instead will positions the cursor to conform subject
230534 -        descriptions only when the default subject is present, and the
230535 -        code deletes it.  So, far this has been the most common
230536 -        situation, and so that works most of the time, especially for
230537 -        new users using minimal subjects.
230538 -
230539 -            [On 040216 is the record where the step to delete the
230540 -            default Control Field line was developed. ref SDS 8 H96O
230541 -
230542 -
230543 -
230544 -
230545 -
2306 -

SUBJECTS
Shift F3 Replicate Integrates Commands for Context Management and Conne

2403 -
240401 -  ..
240402 - Shift F3 Para Replicated from Another Record Citations Updated
240403 - Paragraph Replicated and Citations Updated with Shift F3
240404 - Replicate with Shift F3 or Enter or Double Click Line Number Field
240405 -
240406 - When Shift F3 is called in a target record, content from the transfer
240407 - file created with F3, per above, ref SDS 0 2M3G, is read into the
240408 - record with the Reference lines at the bottom of the file, per
240409 - planning above. ref SDS 0 PH3F  Another loop processes each link in
240410 - the content by moving each reference line to the Reference field.  The
240411 - code examines the Reference field to see if the record is already
240412 - listed, and if so, then the new reference line is deleted, because it
240413 - is redundant, and the citation number for the link in the replicated
240414 - text is changed to the number already listed. If the reference is not
240415 - already listed, then the code calculates the new reference number and
240416 - changes the citation number for links in the replicated text to the
240417 - new number in the source SDS record.
240419 -  ..
240420 - This method is fast and saves considerable memory burden by not
240421 - opening any source records to update the links.
240422 -
240424 -     ..
240425 -    Para Transfer Shift F3 Enter into Target SDS Record
240426 -
240427 -    This code enters the lines in the transfer file with the get
240428 -    command, which were captured with F3, per above, ref SDS 0 2M3G,
240429 -    updates citations, but only for SDS records, and then shifts the
240430 -    left margin and justifies the text to position a forward link
240431 -    accoring to SDS standards.  This code is primarily to replicate
240432 -    forward links, and to automate the format, so there is no
240433 -    additional effort required by the user.
240434 -
240435 -        [On 040624 Gary suggested that only forward links need to be
240436 -        automatically formatted by shifting the margin and justifying
240437 -        the text. ref SDS 13 9T6N
240439 -  ..
240440 - Line 340, ref OF 1 KQ4O, -label entr in 007003 about 30 lines below
240441 -
240442 -    macro 22
240443 -    immed /
240444 -    loc_cur 3 1
240445 -
240446 -        Save initial location
240447 -
240448 -    -label uplp
240449 -    setlen 1 0
240450 -    -if @1 < 10 -goto enp
240452 -     ..
240453 -    up
240454 -    -goto uplp
240455 -
240457 -  ..
240458 - Line 650, ref OF 1 VB6G, -label enp in 007003
240459 -
240460 -    -label enp
240461 -    immed r
240462 -    g stufqc2
240463 -    immed d
240464 -    linecnt 18 0
240465 -    loc_cur 4 1
240466 -    setlen 1 0
240467 -    -if @1 < 10 -goto error
240468 -
240469 -        Read in the file stufqc2 that F3 captured a paragraph of text.
240470 -
240471 -
240473 -  ..
240474 - Line 670, ref OF 1 KO8G, -label fr0301 in 007003
240475 -
240476 -    -label fr0301
240477 -    z 1 5
240478 -    setcnt 0 0
240479 -    fr /0301/
240480 -    -if @0 = 0 -goto frcll
240481 -    up
240482 -    -goto upfrl
240483 -
240484 -        Loop that looks for line numbers that are citatation
240485 -        references, and if one is found, a routine is called that
240486 -        copies the reference line to the Reference field, and then
240487 -        looks for the citation, and if it is already listed, then that
240488 -        citation number is substituted for the corresponding number in
240489 -        the citation, and if the reference is not already listed, then
240490 -        the new citation number is posted to the corresponding number
240491 -        in the text paragraph.
240492 -
240493 -
240494 -
240496 -  ..
240497 - Line 950, ref OF 1 R66G, -label upfrl in 007003 about 60 lines below
240498 -
240499 -    setcnt 28 937
240500 -    macro 541
240501 -    setcnt 28 0
240502 -    chrcnt 32 0
240503 -    -if @32 = 91 -goto flalm
240504 -    -goto rhlnj
240505 -
240506 -        This code shifts the left margin of a forward link that is
240507 -        formatted to fit the structure of the text.
240508 -
240509 -
240511 -     ..
240512 -    Forward Links Shifted and Justified
240513 -
240514 -    Para and headlines are not shifted and justified; only forward
240515 -    links are shifted and justified.
240516 -
240517 -        [On 040624 Gary suggested that only forward links need to be
240518 -        automatically formatted by shifting the margin and justifying
240519 -        the text. ref SDS 13 9T6N
240521 -  ..
240522 - Line 920, ref OF 1 I55G, -label upfrl in 007003
240523 -
240524 -    -label upfrl
240525 -    macro 19
240526 -    rel_cur 1 0
240527 -    chrcnt 32 0
240528 -    rel_cur -1 0
240529 -    setcnt 28 937
240530 -    macro 541
240531 -    setcnt 28 0
240532 -    -if @32 = 106 -goto rhlnj......................... ref SDS 0 RE8I
240533 -    setcnt 2 @4
240534 -    macro 18
240535 -
240536 -        This code begins process to position replicated text to left
240537 -        margin of a forward link column if it exists, and to indent 5
240538 -        columns if there are no forward links, either above or below
240539 -        the new replicated para. The cursor is on column 7, so for para
240540 -        transfer, move cursor down a line and check for a "j" headline
240541 -        flag in the line number field; setcnt 28 937 sets flag for
240542 -        macro 541 to only find left margin; setcnt 28 0 resets flag;
240543 -        cursor is now on left margin.  -if @32 = 106 then this is a
240544 -        headline replication op, so skip all the rest of the
240545 -        formatting.
240546 -
240547 -
240549 -  ..
240550 - Line 1070, ref OF 1 G49I, -label rhlnj in 007003
240551 -
240552 -    -label rhlnj................................. ref SDS 0 FC3L
240553 -    -if @32 = 106 rel_cur 1 0
240554 -    setcnt 32 0
240555 -    macro 144
240556 -    macro 0
240557 -    errormsg  Content replicated
240558 -    -goto en2d
240559 -
240560 -        This is the label for replicating headlines that do not need to
240561 -        have the margin shifted nor to be justified.  This code also
240562 -        ends para replication with Shift F3.  if 32 = 106 it is a
240563 -        headline, so move the cursor down a line to put the cursor at
240564 -        the beginning of the para for editing.
240565 -
240566 -
240567 -
240568 -
240569 -
240570 -
240571 -
240572 -
240573 -
240574 -
240575 -
2406 -