digraph "tds_submit_begin_tran"
{
 // LATEX_PDF_SIZE
  bgcolor="transparent";
  edge [fontname=Helvetica,fontsize=10,labelfontname=Helvetica,labelfontsize=10];
  node [fontname=Helvetica,fontsize=10,shape=box,height=0.2,width=0.4];
  rankdir="LR";
  Node1 [id="Node000001",label="tds_submit_begin_tran",height=0.2,width=0.4,color="gray40", fillcolor="grey60", style="filled", fontcolor="black",tooltip="Send a rollback request."];
  Node1 -> Node2 [id="edge1_Node000001_Node000002",color="steelblue1",style="solid",tooltip=" "];
  Node2 [id="Node000002",label="tds_query_flush_packet",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#gada27f4cfce925240ad33b71b63ca692d",tooltip="Flush query packet."];
  Node2 -> Node3 [id="edge2_Node000002_Node000003",color="steelblue1",style="solid",tooltip=" "];
  Node3 [id="Node000003",label="tds_flush_packet",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00582.html#ga5feb53554e8917a81bbbc332163a61fb",tooltip="Flush packet to server."];
  Node1 -> Node4 [id="edge3_Node000001_Node000004",color="steelblue1",style="solid",tooltip=" "];
  Node4 [id="Node000004",label="tds_start_query",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga0da385231bfa3dc49377e1fb2bea2c07",tooltip="Start query packet of a given type."];
  Node4 -> Node5 [id="edge4_Node000004_Node000005",color="steelblue1",style="solid",tooltip=" "];
  Node5 [id="Node000005",label="tds_start_query_head",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga9ad2e6defce530a8778791cce0166ccd",tooltip="Start query packet of a given type."];
  Node5 -> Node6 [id="edge5_Node000005_Node000006",color="steelblue1",style="solid",tooltip=" "];
  Node6 [id="Node000006",label="tds_freeze_close_len",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00582.html#ga2660b893ae2bf36fe1b63b354e748bad",tooltip="Stop keeping data for this specific freeze."];
  Node5 -> Node7 [id="edge6_Node000005_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node7 [id="Node000007",label="tds_freeze_written",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00582.html#ga528cc96da09c11bc2930daae64e33e83",tooltip="Compute how many bytes has been written from freeze."];
  Node5 -> Node8 [id="edge7_Node000005_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node8 [id="Node000008",label="tds_put_string",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00582.html#ga1fcaf8d488cc1390f106ce3ad0bf37b4",tooltip="Output a string to wire automatic translate string to unicode if needed."];
  Node1 -> Node17 [id="edge8_Node000001_Node000017",color="steelblue1",style="solid",tooltip=" "];
  Node17 [id="Node000017",label="tds_submit_query",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga5a29ae7f99d089dc3cea85ec6ee5f3ab",tooltip="Sends a language string to the database server for processing."];
  Node17 -> Node18 [id="edge9_Node000017_Node000018",color="steelblue1",style="solid",tooltip=" "];
  Node18 [id="Node000018",label="tds_submit_query_params",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga95e0fccedc459a4404f496eec74a369a",tooltip="Sends a language string to the database server for processing."];
  Node18 -> Node19 [id="edge10_Node000018_Node000019",color="steelblue1",style="solid",tooltip=" "];
  Node19 [id="Node000019",label="tds5_fix_dot_query",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#ga8853354723094c8efcd87fabf675c64f",tooltip="Substitute ?-style placeholders with named (@param) ones."];
  Node19 -> Node22 [id="edge11_Node000019_Node000022",color="steelblue1",style="solid",tooltip=" "];
  Node22 [id="Node000022",label="tds_next_placeholder",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#ga8f3b00c34af2484eccb169e60a37dc36",tooltip="Get position of next placeholder."];
  Node18 -> Node25 [id="edge12_Node000018_Node000025",color="steelblue1",style="solid",tooltip=" "];
  Node25 [id="Node000025",label="tds5_put_params",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga4f1f0a4f77bc4ea1440dfdebc19a157c",tooltip="Send parameters to server."];
  Node25 -> Node26 [id="edge13_Node000025_Node000026",color="steelblue1",style="solid",tooltip=" "];
  Node26 [id="Node000026",label="tds_freeze_abort",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00582.html#ga7274d9c5dc75c58bb7d1f1c29e03a73e",tooltip="Discard all data written after the freeze."];
  Node25 -> Node27 [id="edge14_Node000025_Node000027",color="steelblue1",style="solid",tooltip=" "];
  Node27 [id="Node000027",label="tds_freeze_close",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00582.html#ga633f62fb8e5310abfa42c02fba9c6500",tooltip="Stop keeping data for this specific freeze."];
  Node27 -> Node6 [id="edge15_Node000027_Node000006",color="steelblue1",style="solid",tooltip=" "];
  Node27 -> Node7 [id="edge16_Node000027_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node25 -> Node7 [id="edge17_Node000025_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node25 -> Node28 [id="edge18_Node000025_Node000028",color="steelblue1",style="solid",tooltip=" "];
  Node28 [id="Node000028",label="tds_put_data",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00581.html#ga9fcc0a3932dcad530511395ef8a767fb",tooltip="Write data to wire."];
  Node25 -> Node29 [id="edge19_Node000025_Node000029",color="steelblue1",style="solid",tooltip=" "];
  Node29 [id="Node000029",label="tds_put_data_info",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#gafd74652c4722ddce4d642cc4209449d4",tooltip="Put data information to wire."];
  Node29 -> Node6 [id="edge20_Node000029_Node000006",color="steelblue1",style="solid",tooltip=" "];
  Node29 -> Node7 [id="edge21_Node000029_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node29 -> Node8 [id="edge22_Node000029_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node32 [id="edge23_Node000018_Node000032",color="steelblue1",style="solid",tooltip=" "];
  Node32 [id="Node000032",label="tds7_put_query_params",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#ga6e42b4a1d1d3898229ea2fe4afc2ecec",tooltip="Output params types and query (required by sp_prepare/sp_executesql/sp_prepexec)"];
  Node32 -> Node33 [id="edge24_Node000032_Node000033",color="steelblue1",style="solid",tooltip=" "];
  Node33 [id="Node000033",label="tds_count_placeholders\l_ucs2le",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#ga0cd19215e9169ea299a6c9cbf5b2fb60",tooltip="Count the number of placeholders ('?') in a query."];
  Node32 -> Node8 [id="edge25_Node000032_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node37 [id="edge26_Node000018_Node000037",color="steelblue1",style="solid",tooltip=" "];
  Node37 [id="Node000037",label="tds7_write_param_def\l_from_params",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#ga6513afd79629f7a928e1d3da9f56dee1",tooltip="Write string with parameters definition, useful for TDS7+."];
  Node37 -> Node38 [id="edge27_Node000037_Node000038",color="steelblue1",style="solid",tooltip=" "];
  Node38 [id="Node000038",label="tds_dstr_isempty",height=0.2,width=0.4,color="grey40", fillcolor="white", style="filled",URL="$a00584.html#ga197c6af67f2e7469d06c2aa055917b1e",tooltip="test if string is empty"];
  Node37 -> Node26 [id="edge28_Node000037_Node000026",color="steelblue1",style="solid",tooltip=" "];
  Node37 -> Node6 [id="edge29_Node000037_Node000006",color="steelblue1",style="solid",tooltip=" "];
  Node37 -> Node7 [id="edge30_Node000037_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node37 -> Node8 [id="edge31_Node000037_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node41 [id="edge32_Node000018_Node000041",color="steelblue1",style="solid",tooltip=" "];
  Node41 [id="Node000041",label="tds7_write_param_def\l_from_query",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#ga24345856c16b15aa3e84459c2f551320",tooltip="Write string with parameters definition, useful for TDS7+."];
  Node41 -> Node33 [id="edge33_Node000041_Node000033",color="steelblue1",style="solid",tooltip=" "];
  Node41 -> Node26 [id="edge34_Node000041_Node000026",color="steelblue1",style="solid",tooltip=" "];
  Node41 -> Node6 [id="edge35_Node000041_Node000006",color="steelblue1",style="solid",tooltip=" "];
  Node41 -> Node7 [id="edge36_Node000041_Node000007",color="steelblue1",style="solid",tooltip=" "];
  Node41 -> Node8 [id="edge37_Node000041_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node42 [id="edge38_Node000018_Node000042",color="steelblue1",style="solid",tooltip=" "];
  Node42 [id="Node000042",label="tds_convert_string",height=0.2,width=0.4,color="red", fillcolor="#FFF0F0", style="filled",URL="$a00581.html#gad5b76c688898b86984d09628f030d01c",tooltip="Convert a string in an allocated buffer."];
  Node18 -> Node33 [id="edge39_Node000018_Node000033",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node38 [id="edge40_Node000018_Node000038",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node26 [id="edge41_Node000018_Node000026",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node27 [id="edge42_Node000018_Node000027",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node22 [id="edge43_Node000018_Node000022",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node28 [id="edge44_Node000018_Node000028",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node29 [id="edge45_Node000018_Node000029",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node8 [id="edge46_Node000018_Node000008",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node2 [id="edge47_Node000018_Node000002",color="steelblue1",style="solid",tooltip=" "];
  Node18 -> Node5 [id="edge48_Node000018_Node000005",color="steelblue1",style="solid",tooltip=" "];
}
