.Net developer

sala de chat fixada no canto direito embaixo

  • Use pointer-events: none on the container; elements underneath it will now be clickable.

  • Arrange the chat boxes inside the fixed container with display: inline-block and vertical-align: bottom.

  • The chat boxes get pointer-events: auto so they and their children can be clicked.


CSS:

.under {    position: absolute;    bottom: 200px;    right: 200px;  }  #container {    position: fixed;    bottom: 0;    right: 0;    pointer-events: none;  }  .chat {    border: 1px solid #999;    display: inline-block;    vertical-align: bottom;    position: relative;    margin: 0 5px;    pointer-events: auto;  }  .title {    padding: 0.5em;    background-color: blue;    color: white;  }  .text {    padding: 10px;  }

html:

    
<div class="under">    <input type="text" value="select me!" />  </div>    <div id="container">    <div class="chat">      <div class="title">This is the chat title</div>      <div class="text">        <p>Text 1</p>        <p>Text 2</p>        <p>Text 3</p>      </div>      <div class="chatbox">        <input type="text" />      </div>    </div>    <div class="chat">      <div class="title">This is the chat title</div>      <div class="text" style="height:250px">        <p>Text 1</p>        <p>Text 2</p>        <p>Text 3</p>      </div>      <div class="chatbox">        <input type="text" />      </div>    </div>  </div>

Convertendo tabela em pivot table

CREATE TABLE [dbo].[tb_empresas](
    [data] [date] NULL,
    [nome] [varchar](100) NULL,
    [valor] [decimal](18, 2) NULL
) ON [PRIMARY]
 
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-01-01',103),  'EMPRESA1',   100)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-02-02',103),  'EMPRESA2',   200)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-03-03',103),  'EMPRESA3',   300)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-04-04',103),  'EMPRESA4',   400)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-05-05',103),  'EMPRESA5',   500)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-06-06',103),  'EMPRESA6',   600)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-07-07',103),  'EMPRESA7',   700)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-08-08',103),  'EMPRESA8',   800)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-09-09',103),  'EMPRESA9',   900)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-10-10',103),  'EMPRESA10',   1000)
 
   
 select data, nome, valor  from tb_empresas




create procedure [dbo].[OBTER_COLUNAS_DINAMICAMENTE]
AS
SET NOCOUNT ON
 
DECLARE @COLUNAS VARCHAR(MAX)
SET @COLUNAS = ''
 
SELECT @COLUNAS = COALESCE(@COLUNAS + '[' + (CAST(NOME AS NVARCHAR(255))) + '],','')
FROM (SELECT DISTINCT NOME FROM tb_empresas) AS DADOS_HORIZONTAIS
SET @COLUNAS = LEFT (@COLUNAS, LEN(@COLUNAS)-1)
 
DECLARE @SQLSTRING NVARCHAR(500);
 
SET @SQLSTRING = N'
SELECT * FROM(SELECT  DATEPART(MONTH, DATA) AS MES, NOME, VALOR FROM tb_empresas) AS DADOS_HORIZONTAIS
PIVOT(
 MAX(VALOR) FOR NOME IN('+@COLUNAS+')) AS PivotTable;'
 
EXECUTE SP_EXECUTESQL @SQLSTRING


CREATE TABLE [dbo].[tb_empresas](
    [data] [date] NULL,
    [nome] [varchar](100) NULL,
    [valor] [decimal](18, 2) NULL
) ON [PRIMARY]
 
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-01-01',103),  'EMPRESA1',   100)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-02-02',103),  'EMPRESA2',   200)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-03-03',103),  'EMPRESA3',   300)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-04-04',103),  'EMPRESA4',   400)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-05-05',103),  'EMPRESA5',   500)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-06-06',103),  'EMPRESA6',   600)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-07-07',103),  'EMPRESA7',   700)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-08-08',103),  'EMPRESA8',   800)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-09-09',103),  'EMPRESA9',   900)
  INSERT INTO tb_empresas (data, nome, valor)
  VALUES  (convert(datetime,'2012-10-10',103),  'EMPRESA10',   1000)
 
   
 select data, nome, valor  from tb_empresas




create procedure [dbo].[OBTER_COLUNAS_DINAMICAMENTE]
AS
SET NOCOUNT ON
 
DECLARE @COLUNAS VARCHAR(MAX)
SET @COLUNAS = ''
 
SELECT @COLUNAS = COALESCE(@COLUNAS + '[' + (CAST(NOME AS NVARCHAR(255))) + '],','')
FROM (SELECT DISTINCT NOME FROM tb_empresas) AS DADOS_HORIZONTAIS
SET @COLUNAS = LEFT (@COLUNAS, LEN(@COLUNAS)-1)
 
DECLARE @SQLSTRING NVARCHAR(500);
 
SET @SQLSTRING = N'
SELECT * FROM(SELECT  DATEPART(MONTH, DATA) AS MES, NOME, VALOR FROM tb_empresas) AS DADOS_HORIZONTAIS
PIVOT(
 MAX(VALOR) FOR NOME IN('+@COLUNAS+')) AS PivotTable;'
 
EXECUTE SP_EXECUTESQL @SQLSTRING