Changeset 465 for branches


Ignore:
Timestamp:
03/16/14 19:05:07 (6 years ago)
Author:
jls17
Message:
  • delete-workflow is now listed as references on the schema page (at least if the forms name or $SCHEMA$ is used in the action)
  • CRefItem has a new constructor to copy the workflow object from another instance and override the message id at the same time
Location:
branches/work_304
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/work_304/ARInside.cpp

    r463 r465  
    14651465                        return inText; 
    14661466 
     1467                stringstream strmTmp; 
     1468 
     1469                // check for special run-process commands 
     1470                bool specialFound = false; 
     1471                string::size_type cmdStartPos = inText.find("Application-"); 
     1472                if (cmdStartPos != string::npos) 
     1473                { 
     1474                        string::size_type nextSearchPos = cmdStartPos + 12; // add length("Application-") 
     1475                        specialFound = true; 
     1476 
     1477                        if (inText.compare(nextSearchPos, 17, "Copy-Field-Value ") == 0) 
     1478                        { 
     1479                                strmTmp << processTwoFields("Application-Copy-Field-Value", inText, schemaInsideId, rootLevel, refItem); 
     1480                        } 
     1481                        else if (inText.compare(nextSearchPos, 13, "Delete-Entry ") == 0) 
     1482                        { 
     1483                                CRefItem newRefItem(*refItem, REFM_DELETE_ENTRY_ACTION); 
     1484                                strmTmp << processForm("Application-Delete-Entry", inText, schemaInsideId, rootLevel, (refItem == NULL ? refItem : &newRefItem)); 
     1485                        } 
     1486                        else if (inText.compare(nextSearchPos, 12, "Format-Qual ") == 0) 
     1487                        { 
     1488                                strmTmp << processForm("Application-Format-Qual", inText, schemaInsideId, rootLevel, NULL); 
     1489                        } 
     1490                        else if (inText.compare(nextSearchPos, 19, "Format-Qual-Filter ") == 0) 
     1491                        { 
     1492                                strmTmp << processForm("Application-Format-Qual-Filter", inText, schemaInsideId, rootLevel, NULL); 
     1493                        } 
     1494                        else if (inText.compare(nextSearchPos, 15, "Format-Qual-ID ") == 0) 
     1495                        { 
     1496                                strmTmp << processForm("Application-Format-Qual-ID", inText, schemaInsideId, rootLevel, NULL); 
     1497                        } 
     1498                        else if (inText.compare(nextSearchPos, 14, "Format-Qual-L ") == 0) 
     1499                        { 
     1500                                strmTmp << processForm("Application-Format-Qual-L", inText, schemaInsideId, rootLevel, NULL); 
     1501                        } 
     1502                        else if (inText.compare(nextSearchPos, 18, "Get-Approval-Join ") == 0) 
     1503                        { 
     1504                                strmTmp << processForm("Application-Get-Approval-Join", inText, schemaInsideId, rootLevel, NULL); 
     1505                        } 
     1506                        else if (inText.compare(nextSearchPos, 19, "Get-Approval-Join2 ") == 0) 
     1507                        { 
     1508                                strmTmp << processForm("Application-Get-Approval-Join2", inText, schemaInsideId, rootLevel, NULL); 
     1509                        } 
     1510                        else if (inText.compare(nextSearchPos, 16, "Get-DetSig-Join ") == 0) 
     1511                        { 
     1512                                strmTmp << processForm("Application-Get-DetSig-Join", inText, schemaInsideId, rootLevel, NULL); 
     1513                        } 
     1514                        else if (inText.compare(nextSearchPos, 17, "Get-DetSig-Join2 ") == 0) 
     1515                        { 
     1516                                strmTmp << processForm("Application-Get-DetSig-Join2", inText, schemaInsideId, rootLevel, NULL); 
     1517                        } 
     1518                        else if (inText.compare(nextSearchPos, 15, "Get-Form-Alias ") == 0) 
     1519                        { 
     1520                                strmTmp << processForm("Application-Get-Form-Alias", inText, schemaInsideId, rootLevel, NULL); 
     1521                        } 
     1522                        else if (inText.compare(nextSearchPos, 17, "Get-Locale-VuiID ") == 0) 
     1523                        { 
     1524                                strmTmp << processForm("Application-Get-Locale-VuiID", inText, schemaInsideId, rootLevel, NULL); 
     1525                        } 
     1526                        else if (inText.compare(nextSearchPos, 25, "Get-Next-Recurrence-Time ") == 0) 
     1527                        { 
     1528                                strmTmp << processForm("Application-Get-Next-Recurrence-Time", inText, schemaInsideId, rootLevel, NULL); 
     1529                        } 
     1530                        else if (inText.compare(nextSearchPos, 17, "Map-Ids-To-Names ") == 0) 
     1531                        { 
     1532                                strmTmp << processForm("Application-Map-Ids-To-Names", inText, schemaInsideId, rootLevel, NULL); 
     1533                        } 
     1534                        else if (inText.compare(nextSearchPos, 19, "Map-Ids-To-Names-L ") == 0) 
     1535                        { 
     1536                                strmTmp << processForm("Application-Map-Ids-To-Names-L", inText, schemaInsideId, rootLevel, NULL); 
     1537                        } 
     1538                        else if (inText.compare(nextSearchPos, 17, "Map-Names-To-Ids ") == 0) 
     1539                        { 
     1540                                strmTmp << processForm("Application-Map-Names-To-Ids", inText, schemaInsideId, rootLevel, NULL); 
     1541                        } 
     1542                        else if (inText.compare(nextSearchPos, 19, "Map-Names-To-Ids-L ") == 0) 
     1543                        { 
     1544                                strmTmp << processForm("Application-Map-Names-To-Ids-L", inText, schemaInsideId, rootLevel, NULL); 
     1545                        } 
     1546                        else if (inText.compare(nextSearchPos, 11, "Parse-Qual ") == 0) 
     1547                        { 
     1548                                strmTmp << processForm("Application-Parse-Qual", inText, schemaInsideId, rootLevel, NULL); 
     1549                        } 
     1550                        else if (inText.compare(nextSearchPos, 18, "Parse-Qual-Filter ") == 0) 
     1551                        { 
     1552                                strmTmp << processForm("Application-Parse-Qual-Filter", inText, schemaInsideId, rootLevel, NULL); 
     1553                        } 
     1554                        else if (inText.compare(nextSearchPos, 13, "Parse-Qual-L ") == 0) 
     1555                        { 
     1556                                strmTmp << processForm("Application-Parse-Qual-L", inText, schemaInsideId, rootLevel, NULL); 
     1557                        } 
     1558                        else if (inText.compare(nextSearchPos, 20, "Parse-Qual-SField-L ") == 0) 
     1559                        { 
     1560                                strmTmp << processForm("Application-Parse-Qual-SField-L", inText, schemaInsideId, rootLevel, NULL); 
     1561                        } 
     1562                        else if (inText.compare(nextSearchPos, 17, "Parse-Val-SField ") == 0) 
     1563                        { 
     1564                                strmTmp << processForm("Application-Parse-Val-SField", inText, schemaInsideId, rootLevel, NULL); 
     1565                        } 
     1566                        else if (inText.compare(nextSearchPos, 19, "Query-Delete-Entry ") == 0) 
     1567                        { 
     1568                                CRefItem newRefItem(*refItem, REFM_DELETE_ENTRY_ACTION); 
     1569                                strmTmp << processForm("Application-Query-Delete-Entry", inText, schemaInsideId, rootLevel, (refItem == NULL ? NULL : &newRefItem)); 
     1570                        } 
     1571                        else 
     1572                        { 
     1573                                specialFound = false; 
     1574                        } 
     1575                } 
     1576                 
     1577                cmdStartPos = inText.find("PERFORM-ACTION-"); 
     1578                if (cmdStartPos != string::npos) 
     1579                { 
     1580                        string::size_type nextSearchPos = cmdStartPos + 15; // add length("PERFORM-ACTION-") 
     1581                        specialFound = true; 
     1582 
     1583                        if (inText.compare(nextSearchPos, 12, "ACTIVE-LINK ") == 0) 
     1584                        { 
     1585                                strmTmp << processSecondParameter("PERFORM-ACTION-ACTIVE-LINK", inText, schemaInsideId, rootLevel, refItem); 
     1586                        } 
     1587                        else if (inText.compare(nextSearchPos, 15, "ADD-ATTACHMENT ") == 0) 
     1588                        { 
     1589                                strmTmp << processOneField("PERFORM-ACTION-ADD-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
     1590                        } 
     1591                        else if (inText.compare(nextSearchPos, 18, "DELETE-ATTACHMENT ") == 0) 
     1592                        { 
     1593                                strmTmp << processOneField("PERFORM-ACTION-DELETE-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
     1594                        } 
     1595                        else if (inText.compare(nextSearchPos, 16, "GET-FIELD-LABEL ") == 0) 
     1596                        { 
     1597                                strmTmp << processOneField("PERFORM-ACTION-GET-FIELD-LABEL", inText, schemaInsideId, rootLevel, refItem); 
     1598                        } 
     1599                        else if (inText.compare(nextSearchPos, 15, "GET-PREFERENCE ") == 0) 
     1600                        { 
     1601                                strmTmp << processOneField("PERFORM-ACTION-GET-PREFERENCE", inText, schemaInsideId, rootLevel, refItem); 
     1602                        } 
     1603                        else if (inText.compare(nextSearchPos, 28, "NAV-FIELD-SET-SELECTED-ITEM ") == 0) 
     1604                        { 
     1605                                strmTmp << processOneField("PERFORM-ACTION-NAV-FIELD-SET-SELECTED-ITEM", inText, schemaInsideId, rootLevel, refItem); 
     1606                        } 
     1607                        else if (inText.compare(nextSearchPos, 16, "OPEN-ATTACHMENT ") == 0) 
     1608                        { 
     1609                                strmTmp << processOneField("PERFORM-ACTION-OPEN-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
     1610                        } 
     1611                        else if (inText.compare(nextSearchPos, 16, "SAVE-ATTACHMENT ") == 0) 
     1612                        { 
     1613                                strmTmp << processOneField("PERFORM-ACTION-SAVE-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
     1614                        } 
     1615                        else if (inText.compare(nextSearchPos, 15, "SET-PREFERENCE ") == 0) 
     1616                        { 
     1617                                strmTmp << processOneField("PERFORM-ACTION-SET-PREFERENCE", inText, schemaInsideId, rootLevel, refItem); 
     1618                        } 
     1619                        else if (inText.compare(nextSearchPos, 12, "TABLE-CLEAR ") == 0) 
     1620                        { 
     1621                                strmTmp << processOneField("PERFORM-ACTION-TABLE-CLEAR", inText, schemaInsideId, rootLevel, refItem); 
     1622                        } 
     1623                        else if (inText.compare(nextSearchPos, 23, "TABLE-CLEAR-ROWCHANGED ") == 0) 
     1624                        { 
     1625                                strmTmp << processOneField("PERFORM-ACTION-TABLE-CLEAR-ROWCHANGED", inText, schemaInsideId, rootLevel, refItem); 
     1626                        } 
     1627                        else if (inText.compare(nextSearchPos, 18, "TABLE-DESELECTALL ") == 0) 
     1628                        { 
     1629                                strmTmp << processOneField("PERFORM-ACTION-TABLE-DESELECTALL", inText, schemaInsideId, rootLevel, refItem); 
     1630                        } 
     1631                        else if (inText.compare(nextSearchPos, 26, "TABLE-GET-SELECTED-COLUMN ") == 0) 
     1632                        { 
     1633                                strmTmp << processOneField("PERFORM-ACTION-TABLE-GET-SELECTED-COLUMN", inText, schemaInsideId, rootLevel, refItem); 
     1634                        } 
     1635                        else if (inText.compare(nextSearchPos, 23, "TABLE-IS-LEAF-SELECTED ") == 0) 
     1636                        { 
     1637                                strmTmp << processOneField("PERFORM-ACTION-TABLE-IS-LEAF-SELECTED", inText, schemaInsideId, rootLevel, refItem); 
     1638                        } 
     1639                        else if (inText.compare(nextSearchPos, 17, "TABLE-NEXT-CHUNK ") == 0) 
     1640                        { 
     1641                                strmTmp << processOneField("PERFORM-ACTION-TABLE-NEXT-CHUNK", inText, schemaInsideId, rootLevel, refItem); 
     1642                        } 
     1643                        else if (inText.compare(nextSearchPos, 17, "TABLE-PREV-CHUNK ") == 0) 
     1644                        { 
     1645                                strmTmp << processOneField("PERFORM-ACTION-TABLE-PREV-CHUNK", inText, schemaInsideId, rootLevel, refItem); 
     1646                        } 
     1647                        else if (inText.compare(nextSearchPos, 14, "TABLE-REFRESH ") == 0) 
     1648                        { 
     1649                                strmTmp << processOneField("PERFORM-ACTION-TABLE-REFRESH", inText, schemaInsideId, rootLevel, refItem); 
     1650                        } 
     1651                        else if (inText.compare(nextSearchPos, 13, "TABLE-REPORT ") == 0) 
     1652                        { 
     1653                                strmTmp << processOneField("PERFORM-ACTION-TABLE-REPORT", inText, schemaInsideId, rootLevel, refItem); 
     1654                        } 
     1655                        else if (inText.compare(nextSearchPos, 18, "TABLE-SELECT-NODE ") == 0) 
     1656                        { 
     1657                                strmTmp << processOneField("PERFORM-ACTION-TABLE-SELECT-NODE", inText, schemaInsideId, rootLevel, refItem); 
     1658                        } 
     1659                        else if (inText.compare(nextSearchPos, 16, "TABLE-SELECTALL ") == 0) 
     1660                        { 
     1661                                strmTmp << processOneField("PERFORM-ACTION-TABLE-SELECTALL", inText, schemaInsideId, rootLevel, refItem); 
     1662                        } 
     1663                        else 
     1664                        { 
     1665                                specialFound = false; 
     1666                        } 
     1667                } 
     1668 
     1669                //write the current string back to inText, then clear the stream for use with the application code 
     1670                if (specialFound) 
     1671                { 
     1672                        inText = strmTmp.str(); 
     1673                        strmTmp.clear(); 
     1674                        strmTmp.str(""); 
     1675                } 
     1676 
    14671677                string dummySeparator = "##"; //dummy placeholder to avoid infinite replacements 
    1468  
    1469                 stringstream strmTmp; 
    14701678 
    14711679                string::size_type curPos = 0; 
     
    15891797                        strmTmp << inText.substr(curPos,maxLen - curPos); 
    15901798 
    1591                 //write the current string back to inText, then clear the stream for use with the application code 
    1592                 inText = strmTmp.str(); 
    1593                 strmTmp.clear(); 
    1594                 strmTmp.str(""); 
    1595  
    1596                 // check for special run-process commands 
    1597                 bool specialFound = false; 
    1598                 string::size_type cmdStartPos = inText.find("Application-"); 
    1599                 if (cmdStartPos != string::npos) 
    1600                 { 
    1601                         string::size_type nextSearchPos = cmdStartPos + 12; // add length("Application-") 
    1602                         specialFound = true; 
    1603  
    1604                         if (inText.compare(nextSearchPos, 17, "Copy-Field-Value ") == 0) 
    1605                         { 
    1606                                 strmTmp << processTwoFields("Application-Copy-Field-Value", inText, schemaInsideId, rootLevel, refItem); 
    1607                         } 
    1608                         else if (inText.compare(nextSearchPos, 13, "Delete-Entry ") == 0) 
    1609                         { 
    1610                                 strmTmp << processForm("Application-Delete-Entry", inText, schemaInsideId, rootLevel, refItem); 
    1611                         } 
    1612                         else if (inText.compare(nextSearchPos, 12, "Format-Qual ") == 0) 
    1613                         { 
    1614                                 strmTmp << processForm("Application-Format-Qual", inText, schemaInsideId, rootLevel, refItem); 
    1615                         } 
    1616                         else if (inText.compare(nextSearchPos, 19, "Format-Qual-Filter ") == 0) 
    1617                         { 
    1618                                 strmTmp << processForm("Application-Format-Qual-Filter", inText, schemaInsideId, rootLevel, refItem); 
    1619                         } 
    1620                         else if (inText.compare(nextSearchPos, 15, "Format-Qual-ID ") == 0) 
    1621                         { 
    1622                                 strmTmp << processForm("Application-Format-Qual-ID", inText, schemaInsideId, rootLevel, refItem); 
    1623                         } 
    1624                         else if (inText.compare(nextSearchPos, 14, "Format-Qual-L ") == 0) 
    1625                         { 
    1626                                 strmTmp << processForm("Application-Format-Qual-L", inText, schemaInsideId, rootLevel, refItem); 
    1627                         } 
    1628                         else if (inText.compare(nextSearchPos, 18, "Get-Approval-Join ") == 0) 
    1629                         { 
    1630                                 strmTmp << processForm("Application-Get-Approval-Join", inText, schemaInsideId, rootLevel, refItem); 
    1631                         } 
    1632                         else if (inText.compare(nextSearchPos, 19, "Get-Approval-Join2 ") == 0) 
    1633                         { 
    1634                                 strmTmp << processForm("Application-Get-Approval-Join2", inText, schemaInsideId, rootLevel, refItem); 
    1635                         } 
    1636                         else if (inText.compare(nextSearchPos, 16, "Get-DetSig-Join ") == 0) 
    1637                         { 
    1638                                 strmTmp << processForm("Application-Get-DetSig-Join", inText, schemaInsideId, rootLevel, refItem); 
    1639                         } 
    1640                         else if (inText.compare(nextSearchPos, 17, "Get-DetSig-Join2 ") == 0) 
    1641                         { 
    1642                                 strmTmp << processForm("Application-Get-DetSig-Join2", inText, schemaInsideId, rootLevel, refItem); 
    1643                         } 
    1644                         else if (inText.compare(nextSearchPos, 15, "Get-Form-Alias ") == 0) 
    1645                         { 
    1646                                 strmTmp << processForm("Application-Get-Form-Alias", inText, schemaInsideId, rootLevel, refItem); 
    1647                         } 
    1648                         else if (inText.compare(nextSearchPos, 17, "Get-Locale-VuiID ") == 0) 
    1649                         { 
    1650                                 strmTmp << processForm("Application-Get-Locale-VuiID", inText, schemaInsideId, rootLevel, refItem); 
    1651                         } 
    1652                         else if (inText.compare(nextSearchPos, 25, "Get-Next-Recurrence-Time ") == 0) 
    1653                         { 
    1654                                 strmTmp << processForm("Application-Get-Next-Recurrence-Time", inText, schemaInsideId, rootLevel, refItem); 
    1655                         } 
    1656                         else if (inText.compare(nextSearchPos, 17, "Map-Ids-To-Names ") == 0) 
    1657                         { 
    1658                                 strmTmp << processForm("Application-Map-Ids-To-Names", inText, schemaInsideId, rootLevel, refItem); 
    1659                         } 
    1660                         else if (inText.compare(nextSearchPos, 19, "Map-Ids-To-Names-L ") == 0) 
    1661                         { 
    1662                                 strmTmp << processForm("Application-Map-Ids-To-Names-L", inText, schemaInsideId, rootLevel, refItem); 
    1663                         } 
    1664                         else if (inText.compare(nextSearchPos, 17, "Map-Names-To-Ids ") == 0) 
    1665                         { 
    1666                                 strmTmp << processForm("Application-Map-Names-To-Ids", inText, schemaInsideId, rootLevel, refItem); 
    1667                         } 
    1668                         else if (inText.compare(nextSearchPos, 19, "Map-Names-To-Ids-L ") == 0) 
    1669                         { 
    1670                                 strmTmp << processForm("Application-Map-Names-To-Ids-L", inText, schemaInsideId, rootLevel, refItem); 
    1671                         } 
    1672                         else if (inText.compare(nextSearchPos, 11, "Parse-Qual ") == 0) 
    1673                         { 
    1674                                 strmTmp << processForm("Application-Parse-Qual", inText, schemaInsideId, rootLevel, refItem); 
    1675                         } 
    1676                         else if (inText.compare(nextSearchPos, 18, "Parse-Qual-Filter ") == 0) 
    1677                         { 
    1678                                 strmTmp << processForm("Application-Parse-Qual-Filter", inText, schemaInsideId, rootLevel, refItem); 
    1679                         } 
    1680                         else if (inText.compare(nextSearchPos, 13, "Parse-Qual-L ") == 0) 
    1681                         { 
    1682                                 strmTmp << processForm("Application-Parse-Qual-L", inText, schemaInsideId, rootLevel, refItem); 
    1683                         } 
    1684                         else if (inText.compare(nextSearchPos, 20, "Parse-Qual-SField-L ") == 0) 
    1685                         { 
    1686                                 strmTmp << processForm("Application-Parse-Qual-SField-L", inText, schemaInsideId, rootLevel, refItem); 
    1687                         } 
    1688                         else if (inText.compare(nextSearchPos, 17, "Parse-Val-SField ") == 0) 
    1689                         { 
    1690                                 strmTmp << processForm("Application-Parse-Val-SField", inText, schemaInsideId, rootLevel, refItem); 
    1691                         } 
    1692                         else if (inText.compare(nextSearchPos, 19, "Query-Delete-Entry ") == 0) 
    1693                         { 
    1694                                 strmTmp << processForm("Application-Query-Delete-Entry", inText, schemaInsideId, rootLevel, refItem); 
    1695                         } 
    1696                         else 
    1697                         { 
    1698                                 specialFound = false; 
    1699                         } 
    1700                 } 
    1701                  
    1702                 cmdStartPos = inText.find("PERFORM-ACTION-"); 
    1703                 if (cmdStartPos != string::npos) 
    1704                 { 
    1705                         string::size_type nextSearchPos = cmdStartPos + 15; // add length("PERFORM-ACTION-") 
    1706                         specialFound = true; 
    1707  
    1708                         if (inText.compare(nextSearchPos, 12, "ACTIVE-LINK ") == 0) 
    1709                         { 
    1710                                 strmTmp << processSecondParameter("PERFORM-ACTION-ACTIVE-LINK", inText, schemaInsideId, rootLevel, refItem); 
    1711                         } 
    1712                         else if (inText.compare(nextSearchPos, 15, "ADD-ATTACHMENT ") == 0) 
    1713                         { 
    1714                                 strmTmp << processOneField("PERFORM-ACTION-ADD-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
    1715                         } 
    1716                         else if (inText.compare(nextSearchPos, 18, "DELETE-ATTACHMENT ") == 0) 
    1717                         { 
    1718                                 strmTmp << processOneField("PERFORM-ACTION-DELETE-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
    1719                         } 
    1720                         else if (inText.compare(nextSearchPos, 16, "GET-FIELD-LABEL ") == 0) 
    1721                         { 
    1722                                 strmTmp << processOneField("PERFORM-ACTION-GET-FIELD-LABEL", inText, schemaInsideId, rootLevel, refItem); 
    1723                         } 
    1724                         else if (inText.compare(nextSearchPos, 15, "GET-PREFERENCE ") == 0) 
    1725                         { 
    1726                                 strmTmp << processOneField("PERFORM-ACTION-GET-PREFERENCE", inText, schemaInsideId, rootLevel, refItem); 
    1727                         } 
    1728                         else if (inText.compare(nextSearchPos, 28, "NAV-FIELD-SET-SELECTED-ITEM ") == 0) 
    1729                         { 
    1730                                 strmTmp << processOneField("PERFORM-ACTION-NAV-FIELD-SET-SELECTED-ITEM", inText, schemaInsideId, rootLevel, refItem); 
    1731                         } 
    1732                         else if (inText.compare(nextSearchPos, 16, "OPEN-ATTACHMENT ") == 0) 
    1733                         { 
    1734                                 strmTmp << processOneField("PERFORM-ACTION-OPEN-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
    1735                         } 
    1736                         else if (inText.compare(nextSearchPos, 16, "SAVE-ATTACHMENT ") == 0) 
    1737                         { 
    1738                                 strmTmp << processOneField("PERFORM-ACTION-SAVE-ATTACHMENT", inText, schemaInsideId, rootLevel, refItem); 
    1739                         } 
    1740                         else if (inText.compare(nextSearchPos, 15, "SET-PREFERENCE ") == 0) 
    1741                         { 
    1742                                 strmTmp << processOneField("PERFORM-ACTION-SET-PREFERENCE", inText, schemaInsideId, rootLevel, refItem); 
    1743                         } 
    1744                         else if (inText.compare(nextSearchPos, 12, "TABLE-CLEAR ") == 0) 
    1745                         { 
    1746                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-CLEAR", inText, schemaInsideId, rootLevel, refItem); 
    1747                         } 
    1748                         else if (inText.compare(nextSearchPos, 23, "TABLE-CLEAR-ROWCHANGED ") == 0) 
    1749                         { 
    1750                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-CLEAR-ROWCHANGED", inText, schemaInsideId, rootLevel, refItem); 
    1751                         } 
    1752                         else if (inText.compare(nextSearchPos, 18, "TABLE-DESELECTALL ") == 0) 
    1753                         { 
    1754                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-DESELECTALL", inText, schemaInsideId, rootLevel, refItem); 
    1755                         } 
    1756                         else if (inText.compare(nextSearchPos, 26, "TABLE-GET-SELECTED-COLUMN ") == 0) 
    1757                         { 
    1758                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-GET-SELECTED-COLUMN", inText, schemaInsideId, rootLevel, refItem); 
    1759                         } 
    1760                         else if (inText.compare(nextSearchPos, 23, "TABLE-IS-LEAF-SELECTED ") == 0) 
    1761                         { 
    1762                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-IS-LEAF-SELECTED", inText, schemaInsideId, rootLevel, refItem); 
    1763                         } 
    1764                         else if (inText.compare(nextSearchPos, 17, "TABLE-NEXT-CHUNK ") == 0) 
    1765                         { 
    1766                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-NEXT-CHUNK", inText, schemaInsideId, rootLevel, refItem); 
    1767                         } 
    1768                         else if (inText.compare(nextSearchPos, 17, "TABLE-PREV-CHUNK ") == 0) 
    1769                         { 
    1770                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-PREV-CHUNK", inText, schemaInsideId, rootLevel, refItem); 
    1771                         } 
    1772                         else if (inText.compare(nextSearchPos, 14, "TABLE-REFRESH ") == 0) 
    1773                         { 
    1774                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-REFRESH", inText, schemaInsideId, rootLevel, refItem); 
    1775                         } 
    1776                         else if (inText.compare(nextSearchPos, 13, "TABLE-REPORT ") == 0) 
    1777                         { 
    1778                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-REPORT", inText, schemaInsideId, rootLevel, refItem); 
    1779                         } 
    1780                         else if (inText.compare(nextSearchPos, 18, "TABLE-SELECT-NODE ") == 0) 
    1781                         { 
    1782                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-SELECT-NODE", inText, schemaInsideId, rootLevel, refItem); 
    1783                         } 
    1784                         else if (inText.compare(nextSearchPos, 16, "TABLE-SELECTALL ") == 0) 
    1785                         { 
    1786                                 strmTmp << processOneField("PERFORM-ACTION-TABLE-SELECTALL", inText, schemaInsideId, rootLevel, refItem); 
    1787                         } 
    1788                         else 
    1789                         { 
    1790                                 specialFound = false; 
    1791                         } 
    1792                 } 
    1793  
    1794                 return (specialFound ? strmTmp.str() : inText); 
     1799                return strmTmp.str(); 
    17951800        } 
    17961801        catch(exception& e) 
     
    21702175        CARSchema schema(form); 
    21712176        if (schema.Exists()) 
     2177        { 
    21722178                strmTmp << schema.GetURL(rootLevel, false); 
     2179                if (refItem != NULL)  
     2180                { 
     2181                        schema.AddReference(*refItem); 
     2182                } 
     2183        } 
    21732184        else 
     2185        { 
     2186                // check, if $SCHEMA$ is used as form name. In this case we'll create a reference to the current schema 
     2187                if (refItem != NULL && form.compare("$-5$") == 0) 
     2188                { 
     2189                        CARSchema currentSchema(schemaInsideId); 
     2190                        if (currentSchema.Exists()) 
     2191                        { 
     2192                                currentSchema.AddReference(*refItem); 
     2193                        } 
     2194                } 
    21742195                strmTmp << form; 
    2175                 //AddReferenceItem(refItem); 
     2196        } 
    21762197 
    21772198        //write anything past the form to output 
  • branches/work_304/doc/DocSchemaDetails.cpp

    r405 r465  
    22652265                tabPush.AddColumn(20, "Description"); 
    22662266 
     2267                CTable delAction("deleteReferences", "TblObjectList"); 
     2268                delAction.AddColumn(50, "Object Name"); 
     2269                delAction.AddColumn(10, "Enabled"); 
     2270                delAction.AddColumn(20, "Execute On"); 
     2271                delAction.AddColumn(20, "Description"); 
     2272 
    22672273                CTable tabService("serviceReferences", "TblObjectList"); 
    22682274                tabService.AddColumn(50, "Object Name"); 
     
    22702276                tabService.AddColumn(20, "Execute On"); 
    22712277                tabService.AddColumn(20, "Description"); 
     2278 
    22722279 
    22732280                const CARSchema::ReferenceList &refList = schema.GetReferences(); 
     
    23412348                                tabPush.AddRow(row); 
    23422349                        } 
     2350                        if (messageId == REFM_DELETE_ENTRY_ACTION) 
     2351                        { 
     2352                                bool hasEnabledFlag; 
     2353                                string tmpEnabled = ""; 
     2354                                string tmpCssEnabled = ""; 
     2355 
     2356                                unsigned int enabled = curIt->GetObjectEnabled(hasEnabledFlag); 
     2357 
     2358                                if (hasEnabledFlag) 
     2359                                { 
     2360                                        tmpEnabled = CAREnum::ObjectEnable(enabled); 
     2361                                        if (!enabled) { tmpCssEnabled = "objStatusDisabled"; } 
     2362                                } 
     2363 
     2364                                CTableRow row; 
     2365                                row.AddCell(pInside->LinkToObjByRefItem(*curIt, rootLevel)); 
     2366                                row.AddCell(CTableCell(tmpEnabled, tmpCssEnabled)); // Enabled? 
     2367                                row.AddCell(curIt->GetObjectExecuteOn()); // Exceute On 
     2368                                row.AddCell(curIt->GetDescription(rootLevel)); 
     2369                                delAction.AddRow(row); 
     2370                        } 
    23432371                } 
    23442372 
     
    23482376                strm << CWebUtil::ImageTag("doc.gif", rootLevel) << "Workflow writing data to this form" << endl; 
    23492377                tabPush.ToXHtml(strm); 
     2378 
     2379                strm << CWebUtil::ImageTag("doc.gif", rootLevel) << "Workflow deleting data on this form" << endl; 
     2380                delAction.ToXHtml(strm); 
    23502381 
    23512382                strm << CWebUtil::ImageTag("doc.gif", rootLevel) << "Workflow executing services on this form" << endl; 
  • branches/work_304/util/RefItem.cpp

    r368 r465  
    7474} 
    7575 
     76CRefItem::CRefItem(const CRefItem& copyFrom, int dMessage) 
     77{ 
     78        if (&copyFrom != NULL) 
     79        { 
     80                arsStructItemType = copyFrom.arsStructItemType; 
     81                objectId = copyFrom.objectId; 
     82                subObjectId = copyFrom.subObjectId; 
     83                actionIndex = copyFrom.actionIndex; 
     84                messageId = dMessage; 
     85        } 
     86        else  
     87        { 
     88                arsStructItemType = AR_STRUCT_ITEM_XML_NONE; 
     89                objectId = -1; 
     90                subObjectId = -1; 
     91                actionIndex = -1; 
     92                messageId = -1; 
     93        } 
     94} 
     95 
    7696void CRefItem::Init(const CARServerObject &obj, int IfOrElse, int nAction, int dMessage) 
    7797{ 
     
    441461                strm << "Field in Run Process " << IfElse() << "-Action " << ActionIndex(); 
    442462                break; 
     463        case REFM_DELETE_ENTRY_ACTION: 
     464                strm << "Application-Delete Command in " << IfElse() << "-Action " << ActionIndex(); 
     465                break; 
    443466        case REFM_MESSAGE: 
    444467                strm << "Message " << IfElse() << "-Action " << ActionIndex(); 
  • branches/work_304/util/RefItem.h

    r368 r465  
    138138        REFM_SERVICE_HOVERFIELD, 
    139139        REFM_RUN_PROCESS, 
     140        REFM_DELETE_ENTRY_ACTION, 
    140141        REFM_MESSAGE, 
    141142        REFM_CHANGEFIELD, 
     
    220221        CRefItem(const CARServerObject& obj, int dMessage); 
    221222        CRefItem(const CARServerObject& obj, int IfOrElse, int nAction, int dMessage); 
     223        CRefItem(const CRefItem& copyFrom, int dMessage); // to copy the referenced object, but change the message at the same time 
    222224        // the following constructor is for openwindow-action references 
    223225        CRefItem(const CARServerObject& obj, int IfOrElse, int nAction, int OpenOrClose, int dMessage); 
Note: See TracChangeset for help on using the changeset viewer.