Formal shape grammar

Applies to: Access 2013, Office 2013

This is the formal grammar for creating any shape command:

  • Required grammatical terms are text strings delimited by angle brackets ("<>").

  • Optional terms are delimited by square brackets ("[ ]").

  • Alternatives are indicated by a virgule ("|").

  • Repeating alternatives are indicated by an ellipsis ("...").

  • Alpha indicates a string of alphabetical letters.

  • Digit indicates a string of numbers.

  • Unicode-digit indicates a string of unicode digits.

All other terms are literals.

Term

Definition

<shape-command>

SHAPE [<table-exp> [[AS] <alias>]][<shape-action>]

<table-exp>

{<provider-command-text>} |
(<shape-command>) |
TABLE <quoted-name> |
<quoted-name>

<shape-action>

APPEND <aliased-field-list> |

COMPUTE <aliased-field-list> [BY <field-list>]

<aliased-field-list>

<aliased-field> [, <aliased-field...>]

<aliased-field>

<field-exp> [[AS] <alias>]

<field-exp>

(<relation-exp>) |

<calculated-exp> |

<aggregate-exp> |

<new-exp>

<relation_exp>

<table-exp> [[AS] <alias>]

<table-exp> [[AS] <alias>]

<relation-cond-list>

<relation-cond> [, <relation-cond>...]

<relation-cond>

<field-name> TO <child-ref>

<child-ref>

<field-name> |

PARAMETER <param-ref>

<param-ref>

<number>

<field-list>

<field-name> [, <field-name>]

<aggregate-exp>

SUM(<qualified-field-name>) |

AVG(<qualified-field-name>) |

MIN(<qualified-field-name>) |

MAX(<qualified-field-name>) |

COUNT(<qualified-alias> | <qualified-name>) |

STDEV(<qualified-field-name>) |

ANY(<qualified-field-name>)

<calculated-exp>

CALC(<expression>)

<qualified-field-name>

<alias>.[<alias>...]<field-name>

<alias>

<quoted-name>

<field-name>

<quoted-name> [[AS] <alias>]

<quoted-name>

"<string>" |

'<string>' |

[<string>] |

<name>

<qualified-name>

alias[.alias...]

<name>

alpha [ alpha | digit | _ | # | : | ...]

<number>

digit [digit...]

<new-exp>

NEW <field-type> [(<number> [, <number>])]

<field-type>

An OLE DB or ADO data type.

<string>

unicode-char [unicode-char...]

<expression>

A Visual Basic for Applications expression whose operands are other non-CALC columns in the same row.