### Eclipse Workspace Patch 1.0
#P drupal-district
Index: sites/all/modules/workflow/workflow.install
===================================================================
--- sites/all/modules/workflow/workflow.install	(revision 1064)
+++ sites/all/modules/workflow/workflow.install	(working copy)
@@ -216,7 +216,7 @@
   old_sid integer NOT NULL default '0',
   sid integer NOT NULL default '0',
   scheduled integer NOT NULL default '0',
-  comment text
+  comm ent text
 );
 QUERY
       );
@@ -226,8 +226,155 @@
 QUERY
       );
       break;
+
+  
+    case 'mssql':
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_states} (
+  sid int NOT NULL default '0',
+  wid int NOT NULL default '0',
+  state varchar(255) NOT NULL default '',
+  weight smallint NOT NULL default '0',
+  sysid smallint NOT NULL default '0',
+  status smallint NOT NULL default '1',
+  PRIMARY KEY (sid)
+);
+QUERY
+      );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_states}_wid_idx ON {workflow_states} (wid);
+QUERY
+     );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_states}_sysid_idx ON {workflow_states} (sysid);
+QUERY
+     );
+
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_transitions} (
+  tid int NOT NULL default '0',
+  sid int NOT NULL default '0',
+  target_sid int NOT NULL default '0',
+  roles varchar(255) NULL default NULL,
+  PRIMARY KEY (tid)
+);
+QUERY
+      );
+      
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_transitions}_sid_idx ON {workflow_transitions} (sid);
+QUERY
+     );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_transitions}_target_sid_idx ON {workflow_transitions} (target_sid);
+QUERY
+     );
+
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflows} (
+  wid int NOT NULL default '0',
+  name varchar(255) NOT NULL default '',
+  tab_roles varchar(60) NOT NULL default '',
+  PRIMARY KEY  (wid)
+);
+QUERY
+      );
+
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_type_map} (
+  type varchar(255) NOT NULL default '',
+  wid int NOT NULL default '0'
+);
+QUERY
+      );
+
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_type_map}_type_idx ON {workflow_type_map} (type);
+QUERY
+     );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_type_map}_wid_idx ON {workflow_type_map} (wid);
+QUERY
+     );
+     
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_node} (
+  nid int NOT NULL default '0',
+  sid int NOT NULL default '0',
+  uid int NOT NULL default '0',
+  stamp int NOT NULL default '0',
+  PRIMARY KEY  (nid)
+);
+QUERY
+      );
+      
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_node}_nid_idx ON {workflow_node} (nid);
+QUERY
+     );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_node}_sid_idx ON {workflow_node} (sid);
+QUERY
+     );
+
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_node_history} (
+  hid int IDENTITY(1,1) NOT NULL,
+  nid int NOT NULL default '0',
+  old_sid int NOT NULL default '0',
+  sid int NOT NULL default '0',
+  uid int NOT NULL default '0',
+  stamp int NOT NULL default '0',
+  comment text,
+  PRIMARY KEY (hid)
+);
+QUERY
+      );
+
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_node_history}_nid_idx ON {workflow_node_history} (nid);
+QUERY
+     );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_node_history}_sid_idx ON {workflow_node_history} (sid);
+QUERY
+     );      
+      
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_scheduled_transition} (
+  nid int NOT NULL default '0',
+  old_sid int NOT NULL default '0',
+  sid int NOT NULL default '0',
+  scheduled int NOT NULL default '0',
+  comment text
+);
+QUERY
+      );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_scheduled_transition}_nid_idx ON {workflow_scheduled_transition} (nid);
+QUERY
+     );       
+      
+      break;
   }
-
   if (count($result) != count(array_filter($result))) {
     drupal_set_message(t('Drupal was unable to install the database tables for the workflow module.'), 'error');
   }
Index: sites/all/modules/workflow/workflow_access.install
===================================================================
--- sites/all/modules/workflow/workflow_access.install	(revision 1064)
+++ sites/all/modules/workflow/workflow_access.install	(working copy)
@@ -42,6 +42,31 @@
 CREATE INDEX {workflow_access}_rid_idx ON {workflow_access}(rid);
 QUERY
       );
+      break;
+      
+    case 'mssql':
+      $result[] = db_query(
+<<<QUERY
+CREATE TABLE {workflow_access} (
+  sid int NOT NULL default 0,
+  rid int NOT NULL default 0,
+  grant_view tinyint NOT NULL default 0,
+  grant_update tinyint NOT NULL default 0,
+  grant_delete tinyint NOT NULL default 0
+);
+QUERY
+      );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_access}_sid_idx ON {workflow_access} (sid);
+QUERY
+     );
+      $result[] = db_query(
+<<<QUERY
+CREATE INDEX {workflow_access}_rid_idx ON {workflow_access} (rid);
+QUERY
+     );  
+      break;      
   }
 }
 
Index: sites/all/modules/workflow/workflow.module
===================================================================
--- sites/all/modules/workflow/workflow.module	(revision 1064)
+++ sites/all/modules/workflow/workflow.module	(working copy)
@@ -1882,8 +1882,7 @@
     . "FROM {workflow_transitions} t "
     . "INNER JOIN {workflow_states} s "
     . "ON s.sid = t.%s "
-    . "WHERE t.%s = %d AND s.status = 1 "
-    . "ORDER BY state_weight) "
+    . "WHERE t.%s = %d AND s.status = 1) "
     . "UNION "
     . "(SELECT s.sid as tid, s.sid as state_id, s.state as state_name, s.weight as state_weight "
     . "FROM {workflow_states} s "
