Crear una nueva presentación de FileMaker mostrando registros únicos basados ​​en un campo y un recuento de cada

StackOverflow https://stackoverflow.com/questions/1076040

  •  21-08-2019
  •  | 
  •  

Pregunta

Tengo una tabla como la siguiente:

Aplicación del Programa, UsedObject

Puede tener datos como estos:

A, P1, ZZ
A, P1, BB
A, P2, CC
B, F1, KK

Me gustaría crear un diseño para mostrar:

Aplicación, # de Programas
A, 2
B, 1 |

El punto es contar los distintos programas.

Para la vida de mí no puedo hacer este trabajo en FileMaker. He creado un campo de resumen para contar los programas de reajuste después de cada grupo, sino porque no elimina los programas duplicados me sale:

A, 3
B, 1 |

Cualquier ayuda muy apreciada.

¿Fue útil?

Solución 2

Debido a que también generar los datos de esta forma, la solución que he adoptado es llenar dos tablas en FileMaker. Uno proporciona la vista de resumen, el otro la vista detallada.

Otros consejos

Crear un un campo de resumen como: cntApplicaiton = Conde de Application

Para ello, entrar en definir campos, crear un campo llamado cntApplication, sumarias tipo. En el diálogo de opciones de hacer el campo de resumen un recuento de la aplicación

Ahora crear un nuevo diseño con una parte de subsumario y nadie. El subsumario se debe ordenar la aplicación. Poner la aplicación y los campos cntApplication en subsumario. Si introduce el modo examinar y clasificar por aplicación usted debe obtener los datos que desea.

También puede crear un campo calculado con la fórmula GetSummary (cntApplication; Aplicación) Esto le permitirá utilizar el número total de solicitudes de registro en un

Creo que su problema se debe a dupliate registros y una llave inadecuada.

Crear un campo de texto llamado "App_Prog". En el cuadro de opciones de ponerlo en un calco de introducción automática, desactivando la opción 'No reemplace ...', y use el siguiente Calc:

Application & "_" & Program

Ahora cree un auto unirse a la mesa usando App_Prog como el campo en ambos lados, y llamar a esto 'MatchingApps'.

Ahora, crear (si no tiene uno Alread) un campo de número de serie único, 'Contador' decir, y asegurarse de que se introduzca un valor en cada registro. (Encontrar todos, haga clic en el campo, y el uso de la opción número Contenido in'Replace campo de serie ... ')

Ahora añadir un nuevo campo Calc - Is_Duplicate con la siguiente calc ...

If (Counter = MatchingApps::Counter; "Master Record" ; "Duplicate")

Por último, encontrar de todo, haga clic en el 'campo de aplicación, y el uso de 'Reemplazar contenido del campo ...' con un cálculo para forzar la calc de introducción automática para 'App_Prog' para llegar a un valor.

De dónde viene esta se obtiene? Ahora debe tener un conjunto de registros que son marcadores ya sea "Registro maestro" o "duplicado". Hacer un hallazgo en el "Registro Maestro", y luego se pueden realizar su resumen (por aplicación) para hacer un recuento de los pares aplicación de programas distintos.

Si usted tiene acceso a las funciones habituales (que necesita FileMaker Pro Advanced), lo haría así:

Añadir la función RemoveDuplicates como se encuentra aquí (esto es una función recursiva que toma una lista de cadenas y devuelve una lista de valores únicos).

En el gráfico de relaciones, añadir otra ocurrencia de la tabla y agregar una relación = Aplicación Aplicación.

Crear un campo calculado en la tabla con el cálculo buscando algo como esto:

ValueCount(RemoveDuplicates(List(TABLE2::Program)))

Usted encontrará que cada registro contendrá el número de programas distintos para la aplicación dada. Mostrando un resumen para cada aplicación debe ser relativamente trivial desde aquí.

Creo que la mejor manera de hacer esto es crear una tabla de aplicaciones por separado. Así como se ha dado los datos, sería tener dos registros, uno para A y B para uno.

Así que, con la adición de una tabla de aplicaciones y su tabla existente, lo que voy a llamar a objetos, crear una relación de solicitudes de objetos (con una ocurrencia de la tabla llamada ObjectsParent) basado en el ApplicationName como campo coincidente. Crear un auto unirse a la relación entre los objetos y sí con tanto de aplicaciones y el Programa como los campos coincidentes. Voy a llamar a una de las "ocurrencias de la tabla" ObjectsParent y el otro ObjectsChildren. Asegúrese de que hay un campo de clave principal en objetos que se pone en auto-introduzca un número de serie o algún otro método para garantizar la unicidad. Voy a llamar a este ID.

Así que su gráfico de relaciones tiene tres ocurrencias de la tabla:

Aplicaciones :: applicaiton = ObjectsParent :: Aplicación

ObjectsParent :: Aplicación :: = ObjectsChildren aplicación, ObjectsParent :: Programa :: = ObjectsChildren Programa

Ahora cree un campo de cálculo en objetos, y el cálculo del contexto de ObjectsParent, darle la siguiente fórmula:

AppCount = Count (ObjectsChildren :: ID)

Crear un campo de cálculo en aplicaciones y el cálculo del contexto de la ocurrencia de la tabla que utilizó para relacionarlo con ObjectsParent con la siguiente fórmula:

AppCount = ObjectsParent :: AppCount

El campo de recuento de objetos tendrá el mismo valor para todos los objetos con la misma aplicación, por lo que no importa que uno obtiene estos datos de.

Si ahora ve los datos en aplicaciones en vista de lista, puede colocar las Aplicaciones :: aplicaciones y aplicaciones :: campos AppCount sobre la disposición y usted debe conseguir lo que usted ha solicitado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top